9 Commits

Author SHA1 Message Date
9f5b7f602a chore: cleanup flake 2026-04-03 13:44:26 -07:00
77b33b7a85 refactor: further cleanup of linux build 2026-04-02 15:58:28 -07:00
e831648b18 feat(build): don't bother with static build 2026-04-02 15:47:22 -07:00
be277f43c2 feat(build): use crate2nix 2026-04-02 11:34:22 -07:00
3cf64b40a3 chore: don't pin rust overlay nixpkgs to normal nixpkgs 2026-03-31 00:04:36 -07:00
15f7fbe799 chore: add rust-analyzer to nix dev shell
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-30 22:55:44 -07:00
856b5d5d41 chore: reformat 2026-03-30 22:28:45 -07:00
e3078ba61d fix: make nix flake and cargo config portable across Linux and macOS
musl tooling is Linux-only, so guard it behind an isLinux check in
flake.nix and remove the hardcoded musl build target from .cargo/config.toml
(the nix devShell already sets CARGO_BUILD_TARGET on Linux).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-30 22:22:11 -07:00
eae00522e2 Initial implementation of Improvise TUI
Multi-dimensional data modeling terminal application with:
- Core data model: categories, items, groups, sparse cell store
- Formula system: recursive-descent parser, named formulas, WHERE clauses
- View system: Row/Column/Page axes, tile-based pivot, page slicing
- JSON import wizard (interactive TUI + headless auto-mode)
- Command layer: all mutations via typed Command enum for headless replay
- TUI: Ratatui grid, tile bar, formula/category/view panels, help overlay
- Persistence: .improv (JSON), .improv.gz (gzip), CSV export, autosave
- Static binary via x86_64-unknown-linux-musl + nix flake devShell
- Headless mode: --cmd '{"op":"..."}' and --script file.jsonl

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 21:11:55 -07:00