No description
Find a file
2024-06-26 11:00:36 -05:00
.trunk Add Trunk Linter to repo 2023-11-21 16:04:37 -06:00
editor_templates Switch Repo to notatio/notatio 2023-11-20 22:10:40 -06:00
static 🎨 Chore: Format list.js 2024-06-26 11:00:36 -05:00
templates Improve user experience and add about page 2023-12-03 17:35:00 -06:00
.env.example Switch Repo to notatio/notatio 2023-11-20 22:10:40 -06:00
.gitignore Switch Repo to notatio/notatio 2023-11-20 22:10:40 -06:00
database.go Switch Repo to notatio/notatio 2023-11-20 22:10:40 -06:00
docker-compose.yaml Switch Repo to notatio/notatio 2023-11-20 22:10:40 -06:00
Dockerfile Update Golang base image in Dockerfile 2023-11-21 15:14:22 -06:00
editor.go ♻️ Refactor: Remove unused variable in handleError 2024-06-26 10:03:24 -05:00
export.go Switch Repo to notatio/notatio 2023-11-20 22:10:40 -06:00
go.mod Update go dependencies 2023-11-29 17:29:47 -06:00
go.sum Update go dependencies 2023-11-29 17:29:47 -06:00
Jenkinsfile Switch Repo to notatio/notatio 2023-11-20 22:10:40 -06:00
LICENSE Switch Repo to notatio/notatio 2023-11-20 22:10:40 -06:00
list.go ♻️ Refactor: Remove unused variables 2024-06-26 10:33:47 -05:00
main.go ♻️ Refactor: Remove unused variables 2024-06-26 10:33:47 -05:00
README.md 📝 Docs: Update README spelling and project details 2024-06-26 09:55:27 -05:00
user.go Rework how form data is collected for signup 2023-11-29 23:30:12 -06:00
wait-for-postgres.sh Switch Repo to notatio/notatio 2023-11-20 22:10:40 -06:00

Notatio

💡 About

Notatio is currently under heavy development, and as such there is the possibility breaking changes

Notatio is a self-hostable, containerized, web-based text editor. The main objective of the project is to create a platform independent text editor (and productivity management suite). I hope to develop this as an alternative to proprietary software like obsidian and Notion.so which I have loved and used in the past. This software was originally created as part of a Senior Capstone, but is now being developed in my spare time while job hunting.

🛣️ Roadmap

In Progress

  • 🕓 Building Custom Text Editor
  • 🕓 Add Kanban Board

Planned V1 Release

  • Flesh out File Management Operations
  • NoSQL setup option

Planned v1.1 Release

  • Collaborative Editing
  • File Versioning

Planned v1.2 Release

  • End-to-End Encryption

💾 Download

Downloading Notatio is simple! Just clone the repository using the command below:

git clone https://codeberg.org/musselman/notatio

🚀 Running

There are two ways to run Notatio.


Docker

Before running the Docker container, make sure to copy .env.example to .env and customize the environment variables to your preferences:

cp .env.example .env

Launch the containers using the following command:

docker-compose up -d

Podman (Alternative to Docker)

  1. Make sure you have Podman and Podman-Compose installed on your system.
  2. Copy .env.example to .env and modify the environment variables as per your requirements.
  3. Edit the docker-compose.yaml to have :Z's at the end of volumes. This is to tell SELinux that the volumes should be labeled with the appropriate security context.
  4. Launch the containers using the following command:
podman-compose up -d

Please note that using Podman instead of Docker requires you to have Podman installed and properly configured on your system. The usage and setup of Podman may differ from Docker, so please consult the Podman documentation for further information.

🛠️ Go Binary (Advanced)


Note: This setup requires a running PostgreSQL database. Please set it up before proceeding.

To run Notatio using the Go binary, follow the steps below:

  1. Build the Go binary.
  2. Pass the necessary environment variables to the program, editing them to provide the required information for your database.

Example command:

DB_HOST=127.0.0.1 PGPORT=5432 DB_USER=postgres POSTGRES_PASSWORD=mysecretpassword DB_SSL_MODE=disable ADMIN_USER=admin_user ADMIN_NAME=Admin ADMIN_EMAIL=admin@example.com ADMIN_PASS=admin_is_not_a_good_password! ./notatio

Please note that this method is more advanced and requires additional setup.

🤝 Contributing

As this is no longer an academic project, All contributions are welcome. Please take a look at contributing guide.

📄 License

This project is licensed under the AGPL - see the LICENSE file for details