Project kickoff time!! Dawnline is now a reality! At least the little part that’s already built… x3
This first run was mostly concept-proofing. I’m still not 100% sure what the exact final shape of this project is going to be and I don’t want to pretend otherwise too early. The idea is clear enough though: a minimal, clean terminal focus center. Something for shaping the day, seeing what matters now, and ending with a useful little review to keep things organized.
So for now I focused on making the concept exist in the terminal at all. There’s a Rust TUI skeleton with the main modes from the concept: Plan, Execute, and Review. It’s not polished yet, obviously, but the basic loop is there: plan blocks/tasks, execute from a more focused view, and review what happened.
A lot of the early interaction ideas (and UI components x3) are borrowed from CHARON (part of AETHER, my other flavortown project :3), because it already gave me a bunch of useful TUI patterns to steal from myself x3 Things like keyboard-first flow, command-palette-style input, modes, panes, and the general no-mouse feeling all come from lessons learned there. Dawnline is definitely its own thing, but CHARON gave it a nice little head start.
Under the hood I started with an event-sourced foundation, because Dawnline is supposed to care about the day as something that happened, not just a pile of current todo items. Tasks, blocks, notes, sessions, focus logs, completion/drop/remove actions, all of that is represented as events and replayed into the current state. For now it writes to ~/.local/share/dawnline/events.jsonl, which is very MVP and untidy, but it works!!
There’s also a tiny CLI surface already, plus a simple command palette inside the TUI. Nothing clever yet, but you can add tasks, priority tasks, blocks, notes, log focus time, start blocks, finish sessions and get a basic review. It’s definitely still concept-proof territory and not what I see in my head yet… but the bones are there!!!
So yeah, Dawnline begins here. I don’t fully know where it’s going yet, but I know the core feeling I’m chasing: calm, minimal, focused, a little premium and actually useful when the day starts getting messy. For now it’s mostly a skeleton with ambition, but at least the skeleton can run in a terminal now :3