Track your work hours across tasks, projects and rates from your terminal.
Chankat comes with:
- TUI controllable by vim motions, and mouse.
- CLI for automation and integration with other apps.
curl -fsSL https://raw.githubusercontent.com/ahme-dev/chankat/main/install.sh | shThe installer verifies the release checksum and writes to ~/.local/bin. Set
CHANKAT_INSTALL_DIR or CHANKAT_VERSION to override the destination or version.
It also installs Bash completion under the user's data directory. Set
CHANKAT_COMPLETION_DIR to override that destination. Run
chankat completion bash to print the completion script directly. Completion
uses the CLI to suggest commands, flags and relevant record IDs.
On windows, please check releases and manually install.
Merges to main are released from Conventional Commits:
fix:creates a patch release.feat:creates a minor release.BREAKING CHANGE:creates a major release.- Other commit types do not create a release.
Release archives are built for Linux, macOS and Windows.
| Tasks | Payments |
|---|---|
![]() |
![]() |
| Project editor | Payment editor |
![]() |
![]() |
Build and test changes with the Makefile:
make build
make testRepository structure:
cmd/ application and development command entry points
internal/cli/ CLI parsing and output
internal/storage/ SQLite access, schema, validation and aggregation
internal/tui/ terminal application and tab navigation
internal/tui/components/ reusable TUI controls and formatting
internal/tui/screens/ TUI screens and forms
assets/ screenshots and other static files
Keep command entry points limited to startup and dependency wiring. Put database
operations and data aggregation in internal/storage. CLI behavior belongs in
internal/cli; TUI screens belong in internal/tui/screens, with reusable UI
code in internal/tui/components. Keep tests beside the code they cover.
Set CHANKAT_DATA_PATH to override the SQLite database file. Development
commands use .dev-data/data.sqlite, leaving the installed application's user
database untouched:
make seed
make run



