Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ava

A fun personal project inspired by Ex Machina - A film by Alex Garland.


ava is a simple TUI to-do list for coding sessions. One file per session, stored as plain GitHub-flavored markdown so it's useful in any editor or renderer. Linux, terminal, no dependencies.

╭─ ava · 2026-05-31 14:30 · 3 active / 2 done ──────────────────╮
│ ╭─ Active ───────────────╮ ╭─ Completed ────────────────────╮ │
│ │ ▸ Wire up the parser   │ │ ✓ Sketch the data model        │ │
│ │   Add render snapshots │ │ ✓ Pick a directory layout      │ │
│ │   Implement -r picker  │ │                                │ │
│ ╰────────────────────────╯ ╰────────────────────────────────╯ │
│  a add  d delete  space toggle  J/K move  s save  q quit  ?   │
╰───────────────────────────────────────────────────────────────╯

Install

Requires Zig 0.16.0.

zig build -Doptimize=ReleaseSafe
cp zig-out/bin/ava ~/.local/bin/   # or wherever

Use

ava              # start a new session, named for the current time
ava -r           # resume a past session (interactive picker)
ava --list       # print all sessions to stdout
ava --help

Sessions live in $XDG_DATA_HOME/ava (default ~/.local/share/ava/), named YYYY-MM-DD_HH-MM.md.

Resuming a past session renames the file to the current timestamp — the old name goes away. Contents travel with the rename.

Keys

Navigation   j/k or ↑/↓    h / ← → / l  switch pane    g / G  top / bottom
Editing      a add   d delete   space|x toggle   Shift+J/K reorder
App          s save   q quit (auto-saves)   ? help overlay   Esc cancel
Mouse        wheel scrolls the focused pane

Press ? inside the app for the full reference.

File format

# Session 2026-05-31 14:30

## Active

- [ ] buy milk
- [ ] walk dog

## Completed

- [x] write the README

GitHub-flavored task lists. Edit the file in any editor; ava parses - [ ] / - [x] lines and ignores everything else. Tasks are capped at 150 bytes of UTF-8 text.

Environment

  • $XDG_DATA_HOME — override the storage directory.
  • $NO_COLOR — disables all color output (no-color.org).

Platform

Linux only. macOS/BSD might work but aren't tested.

License

MIT.

About

A programming task manager written in Zig

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages