NoteGo is an open-source note-taking application inspired by Google Keep, with the added feature of git-like version control for your notes.
- Create, read, update, and delete notes
- Version history
- Color coding for notes
- Archive functionality
- Git-like version control system
- Backend: Go
- Database: PostgreSQL
- Go 1.16 or higher
- PostgreSQL 12 or higher
-
Clone the repository:
git clone https://github.com/guisithos/notego.git
-
Set up the database:
createdb notego-db
-
Update the database connection string in
main.go
if needed. -
Run the application:
go run main.go
POST /notes
- Create a new noteGET /notes
- Get all notesGET /notes/{id}
- Get a specific notePUT /notes/{id}
- Update a noteDELETE /notes/{id}
- Delete a note
NoteGo implements a Git-like version control system for notes:
- Each note modification creates a new version
- Versions are linked through parent-child relationships
- Each version has a unique commit hash
- Versions store the complete state of the note at that point in time
Contributions are welcome! Please feel free to submit a Pull Request.