Skip to content

stormlightlabs/noteleaf

Repository files navigation

Noteleaf

codecov Go Report Card License Go Version

Noteleaf is a unified personal productivity CLI that combines task management, note-taking, and media tracking in one place. It provides TaskWarrior-inspired task management with additional support for notes, articles, books, movies, and TV shows, all built with Golang & Charm.sh libs. Inspired by TaskWarrior & todo.txt CLI applications.

Why?

  • Fragmented Ecosystem: Instead of juggling multiple apps for tasks, notes, reading lists, and media queues, Noteleaf provides a single CLI interface
  • Terminal-native: For developers and power users who prefer staying in the terminal, Noteleaf offers rich TUIs without leaving your command line
    • Lightweight: No desktop apps or web interfaces, just a fast, focused CLI tool
  • Unified data model: Tasks, notes, and media items can reference each other, creating a connected knowledge and productivity system

Getting Started

Quick Install

git clone https://github.com/stormlightlabs/noteleaf
cd noteleaf
go build -o ./tmp/noteleaf ./cmd
go install

First Steps

For a comprehensive walkthrough including task management, time tracking, notes, and media tracking, see the Quickstart Guide.

Development

Noteleaf uses Task for build automation. Development builds include additional tooling commands not available in production builds.

Building

# Production build
task build

# Development build (with version info and dev tools)
task build:dev

# Run tests
task test
task cov # ...with coverage

Development Tools

Dev builds (task build:dev) include a tools subcommand with maintenance utilities:

Documentation Generation:

# Generate Docusaurus documentation
noteleaf tools docgen --format docusaurus --out website/docs/manual

# Generate man pages
noteleaf tools docgen --format man --out docs/manual

Data Synchronization:

# Fetch Leaflet lexicons from GitHub
noteleaf tools fetch lexicons

# Fetch from a specific commit
noteleaf tools fetch lexicons --sha abc123def

# Generic GitHub repository archive fetcher
noteleaf tools fetch gh-repo \
  --repo owner/repo \
  --path schemas/ \
  --output local/schemas/

Production builds (task build:rc, task build:prod) use the -tags prod flag to exclude dev tools.

About

read, write, & manage your life through the terminal

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages