# Gotes A simple golang based notes application ## Current state Server application runs independantly & binds to port 8080 storing data in an sqlite table Client CLI supports crud operations for notes with arguments consumed from flags ## TODO - [ ] Implement `title` support in cli - [ ] Refactor cli interactions to use a repository/notes interface wrapped implementation - [ ] General project structure tidy up - [ ] Update simplecli to use positional arguments comined with flags - [ ] Create unified cmd entry point starting server in go routine closing after command completed - [ ] Create config module for controlling server startup config - [ ] Implement filesystem based notestore - [ ] Implement webdav based notestore - [ ] Implement git based notestore - [ ] Create TUI based on charmbracelet eco system ### Target structure |- config |- cmd | |- CLI (contains unified entrypoint with positional args for starting server / client ops) | |- UnifiedCLI (CLI with auto background server) | |- TUI |- internal | |- models | |- repository | | |- notes | | | |- sqlite | | | |- server | | | |- filesystem ... etc | |- service | | | |- notes | |- config | |- handlers (HTTP server handlers)