cli + tui to publish to leaflet (wip) & manage tasks, notes & watch/read lists 馃崈
charm leaflet readability golang
HTML 52.8%
Go 47.1%
Just 0.1%
56 1 0

Clone this repository

https://tangled.org/desertthunder.dev/noteleaf
git@tangled.org:desertthunder.dev/noteleaf

For self-hosted knots, clone URLs may differ based on your setup.

README.md

Noteleaf#

codecov Go Report Card License Go Version

                                    ,,                       ,...
`7MN.   `7MF'         mm          `7MM                     .d' ""
  MMN.    M           MM            MM                     dM`
  M YMb   M  ,pW"Wq.mmMMmm .gP"Ya   MM  .gP"Ya   ,6"Yb.   mMMmm
  M  `MN. M 6W'   `Wb MM  ,M'   Yb  MM ,M'   Yb 8)   MM    MM
  M   `MM.M 8M     M8 MM  8M""""""  MM 8M""""""  ,pm9MM    MM
  M     YMM YA.   ,A9 MM  YM.    ,  MM YM.    , 8M   MM    MM
.JML.    YM  `Ybmd9'  `Mbmo`Mbmmd'.JMML.`Mbmmd' `Moo9^Yo..JMML.

A note, task & time management CLI built with Golang & Charm.sh libs. Inspired by TaskWarrior & todo.txt CLI applications.

Development#

Requires Go v1.24+

Testing#

Handlers#

The command handlers (cmd/handlers/) use a multi-layered testing approach for happy and error paths:

  • Environment Isolation
    • Tests manipulate environment variables to simulate configuration failures
  • File System Simulation
    • By creating temporary directories with controlled permissions, tests verify that handlers properly handle file system errors like read-only directories, missing files, and permission denied scenarios.
  • Data Corruption Testing
    • Tests intentionally corrupt database schemas and configuration files to ensure handlers detect and report data integrity issues.
  • Table-Driven Error Testing
    • Systematic testing of multiple error scenarios using structured test tables