Expand description
mach — a powerful yet easy-to-use todo TUI, built with ratatui.
Modules§
- app
- Application state and every operation the UI can trigger.
- banner
- The mach wordmark and the text shown in the help overlay.
- cli
- Command-line front end for humans and agents.
- description
- The description editor: one free-form stack of blocks — prose, bullets,
numbered items, links, to-dos and pictures. A bullet is
-at the head of a line, a number is1., a picture is a pasted or typed path, and the/menu turns a line into a to-do, bullet, number or link, pastes clipboard content, or copies content out. Backspace at the head of a list item turns it back into prose. - due
- Due dates may be typed inline as
[...]at the end of a task description. Input accepts[yyyy-mm-dd hh:mm],[yyyy-mm-dd],[mm-dd hh:mm],[mm-dd], and[hh:mm]; persistence canonicalizes shorthand to an absolute date and stores it separately from the title. - duepicker
- Date-and-time picker for the Due field. Both the day and the clock are set from this UI — the field itself is not free-typed.
- form
- The task dialog — title, description, due date and subtasks — used for both creating and editing a task.
- fuzzy
- Subsequence fuzzy scoring for type-to-jump navigation.
- image
- Images referenced from a task’s description.
- input
- Keyboard and mouse handling.
- model
- Task and category types for the local todo store.
- open
- Open URLs in the system browser (or the platform handler).
- settings
- User settings persisted by
crate::store::Store. - slash
- The
/command palette: navigation, information, task actions, updates and quit. - store
- SQLite-backed persistence for tasks, categories, and settings.
- text_
input - A one-line editor. Every text field in mach is built from it — the title, the due date, category names, the command line, the search box, and each block of a task’s description. Cursor and selection indices are Unicode grapheme clusters; display geometry is still measured in cells.
- theme
- 256-colour palette and the styles the UI is built from.
- ui
- All drawing: a Categories panel on the left, a Tasks panel on the right, and a status line along the bottom. Each panel is a rounded block whose border lights up when it holds focus.
- undo
- Form-level undo / redo.
- update
- Check for and install newer builds.