Repository navigation
gotodo v0.0.1 - Initial Release
gotodo v0.0.1
A simple, Git-aware todo CLI tool written in Go. Manage your todos with colors, repository integration, and per-project lists.
What's New
Added
- Git Repository Integration: Automatically uses
.gotodo.jsonat the Git repository root when inside a repo, otherwise in the current directory - Colored CLI Output: Beautiful terminal interface using Lipgloss library
- Multi-word Tasks: Support for tasks with spaces in todo descriptions
- Relative Timestamps: Show "Xh Ym ago" for open todos with
--longflag - Flexible Commands:
gotodo init- Initialize a todo filegotodo add "task description"- Add a new todogotodo list [--long] [--done-limit N]- List todos with optional timestampsgotodo done <id|index>- Mark todo as completedgotodo rm <id|index> [--force]- Remove a todo
- Cross-platform Support: Works on Linux, macOS, and Windows
- Comprehensive Documentation: README with installation, usage, and examples
- Unit Tests: Test coverage for core functionality
- MIT License: Open source licensing
Technical Details
- Built with Go 1.24.2
- Uses Lipgloss for terminal styling
- Git-aware file discovery using
git rev-parse --show-toplevel - JSON-based storage with atomic writes for data safety
- Command-line argument parsing with flag support
- Relative time formatting for human-readable timestamps
Known Limitations
- Initial release with core functionality
- No web sync or advanced features yet
- CLI-only interface (no GUI or web UI)
Installation
# Via Go install
go install github.com/juparave/gotodo/cmd/gotodo@latest
# From source
git clone https://github.com/juparave/gotodo.git
cd gotodo
go install ./cmd/gotodoUsage Examples
gotodo init
gotodo add "Write documentation"
gotodo list --long
gotodo done 1
gotodo rm 2