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>
16 lines
636 B
TOML
16 lines
636 B
TOML
[build]
|
|
# Always build a fully-static musl binary by default.
|
|
# The devShell sets CARGO_BUILD_TARGET and CARGO_TARGET_*_LINKER,
|
|
# so the linker is resolved automatically via the environment.
|
|
target = "x86_64-unknown-linux-musl"
|
|
|
|
[target.x86_64-unknown-linux-gnu]
|
|
# Use gcc (not rust-lld) for host-target build scripts on NixOS.
|
|
# rust-lld bundled with rust-overlay can't resolve glibc symbols on NixOS.
|
|
linker = "gcc"
|
|
|
|
[target.x86_64-unknown-linux-musl]
|
|
# Linker is provided via CARGO_TARGET_X86_64_UNKNOWN_LINUX_MUSL_LINKER
|
|
# in the nix devShell. Outside nix, musl-gcc must be in PATH.
|
|
rustflags = ["-C", "target-feature=+crt-static"]
|