Deliverables
Context
Section titled “Context”After completing the CLI Task Manager project, you should have a set of deliverables that make your tool production‑ready and publishable.
Required deliverables
Section titled “Required deliverables”- Source code – All Go files with proper package structure, comments, and error handling.
- Unit tests – At least 80% coverage for core logic (loading, saving, adding tasks).
- Documentation –
README.mdwith installation, usage, examples, and contribution guide. - Release binaries – Pre‑compiled binaries for Linux, macOS, Windows (amd64, arm64) using GoReleaser.
- Go module –
go.modandgo.sumwith pinned dependencies. - Makefile – Targets for
build,test,clean,install,release. - CI/CD – GitHub Actions (or similar) that runs tests and builds on push/tag.
- Version tag – Git tag (e.g.,
v1.0.0) for the release.
Optional deliverables
Section titled “Optional deliverables”- Packaging – Homebrew formula, Snap, or APT repository.
- Shell completions – Generate bash/zsh/fish completions with Cobra.
- Colour output – Respect
NO_COLORandCLICOLOR. - Progress bar – For long operations (e.g., batch processing).
Example README structure
Section titled “Example README structure”TaskMan – CLI Task Manager
Section titled “TaskMan – CLI Task Manager”Installation
Section titled “Installation”go install github.com/yourusername/taskman@latesttaskman add "Buy milk"taskman listtaskman complete 1taskman delete 1Development
Section titled “Development”make testmake buildLicense
Section titled “License”MIT