From 665bd389a0a1c8adadcaa1122e846cc81f5ead31 Mon Sep 17 00:00:00 2001 From: T Date: Tue, 5 Aug 2025 11:37:02 -0600 Subject: WIP TUI --- TODO.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'TODO.md') diff --git a/TODO.md b/TODO.md index fa81a6b..a81d1b4 100644 --- a/TODO.md +++ b/TODO.md @@ -3,6 +3,10 @@ - [x] add a `billable_rate` to both client and project DB tables - [x] get rid of `test_entry.created_at` - [x] build any best-practice `#PRAGMA`s for working with sqlite in a local user's environment into `GetDB()` -- [ ] fill in `punch report` with typst report generation for invoices and timesheets -- [ ] brainstorm a TUI mode made with bubbletea -- [ ] implement `punch set [-c|--client ] [-p|--project ] key=value ...` - one of -c or -p is required (but never both), and keys will only be valid if they are members of a specific list, which is dependent on whether we're setting something on a client or project. on client we can set "name", "email", and "billable_rate", and on project we can set "name" and "billable_rate". +- [x] implement `punch set [-c|--client ] [-p|--project ] key=value ...` - one of -c or -p is required (but never both), and keys will only be valid if they are members of a specific list, which is dependent on whether we're setting something on a client or project. on client we can set "name", "email", and "billable_rate", and on project we can set "name" and "billable_rate". +- [x] fill in `punch report` with typst report generation for invoices and timesheets +- [x] brainstorm a TUI mode made with bubbletea +- [ ] implement TUI mode from the wireframes +- [ ] expand `punch report X -d ` parsing: + - [ ] any month name and it's the full month in the current year (unless it hasn't begun yet, then it's last year's) + - [ ] "april 2022" - month and year -- cgit v1.2.3