cli + tui to publish to leaflet (wip) & manage tasks, notes & watch/read lists 馃崈
charm leaflet readability golang
at main 82 lines 2.8 kB view raw view rendered
1# Noteleaf 2 3[![codecov](https://codecov.io/gh/stormlightlabs/noteleaf/branch/main/graph/badge.svg)](https://codecov.io/gh/stormlightlabs/noteleaf) 4[![Go Report Card](https://goreportcard.com/badge/github.com/stormlightlabs/noteleaf)](https://goreportcard.com/report/github.com/stormlightlabs/noteleaf) 5[![License](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE) 6[![Go Version](https://img.shields.io/github/go-mod/go-version/stormlightlabs/noteleaf)](go.mod) 7 8Noteleaf is a unified personal productivity CLI that combines task management, note-taking, and media tracking in one place. 9It provides TaskWarrior-inspired task management with additional support for notes, articles, books, movies, and TV shows, all built with Golang & Charm.sh libs. 10Inspired by TaskWarrior & todo.txt CLI applications. 11 12## Why? 13 14- **Fragmented Ecosystem**: Instead of juggling multiple apps for tasks, notes, reading lists, and media queues, Noteleaf provides a single CLI interface 15- **Terminal-native**: For developers and power users who prefer staying in the terminal, Noteleaf offers rich TUIs without leaving your command line 16 - **Lightweight**: No desktop apps or web interfaces, just a fast, focused CLI tool 17- **Unified data model**: Tasks, notes, and media items can reference each other, creating a connected knowledge and productivity system 18 19## Getting Started 20 21### Quick Install 22 23```sh 24git clone https://github.com/stormlightlabs/noteleaf 25cd noteleaf 26go build -o ./tmp/noteleaf ./cmd 27go install 28``` 29 30### First Steps 31 32For a comprehensive walkthrough including task management, time tracking, notes, and media tracking, see the [Quickstart Guide](website/docs/Quickstart.md). 33 34## Development 35 36Noteleaf uses [Task](https://taskfile.dev) for build automation. Development builds include additional tooling commands not available in production builds. 37 38### Building 39 40```sh 41# Production build 42task build 43 44# Development build (with version info and dev tools) 45task build:dev 46 47# Run tests 48task test 49task cov # ...with coverage 50``` 51 52### Development Tools 53 54Dev builds (`task build:dev`) include a `tools` subcommand with maintenance utilities: 55 56**Documentation Generation:** 57 58```sh 59# Generate Docusaurus documentation 60noteleaf tools docgen --format docusaurus --out website/docs/manual 61 62# Generate man pages 63noteleaf tools docgen --format man --out docs/manual 64``` 65 66**Data Synchronization:** 67 68```sh 69# Fetch Leaflet lexicons from GitHub 70noteleaf tools fetch lexicons 71 72# Fetch from a specific commit 73noteleaf tools fetch lexicons --sha abc123def 74 75# Generic GitHub repository archive fetcher 76noteleaf tools fetch gh-repo \ 77 --repo owner/repo \ 78 --path schemas/ \ 79 --output local/schemas/ 80``` 81 82Production builds (`task build:rc`, `task build:prod`) use the `-tags prod` flag to exclude dev tools.