atxt does not currently use a project-specific runtime config file. Configuration lives in the development environment, the crate manifest, and the eventual CLI and API surfaces.
Use these layers in order:
flake.nixfor the development environmentCargo.tomlfor package metadata and dependency graphjustfilefor standard local workflows- CLI flags or Rust API calls for rendering behavior
- terminal environment signals for capability detection
If you use Nix:
nix developThe default shell provides:
- the Rust toolchain with
clippy,rustfmt,rust-src,rust-analyzer, andllvm-tools cargo-nextestfor testscargo-llvm-covfor coveragejustfor repository workflowsffmpegfor media probing and fixture generationkeelfor structured planningsiftfor fast search
The repository-standard command surface is the justfile.
| Command | Purpose |
|---|---|
just fmt |
format the crate |
just fmt-check |
check formatting |
just cargo-check |
type-check all targets |
just clippy |
run lint checks with warnings denied |
just test |
run tests via cargo nextest run |
just doctest |
run documentation tests |
just check |
run formatting, type checks, linting, tests, and doctests |
just coverage |
generate an LCOV coverage report |
just flake-check |
validate the flake |
Cargo.toml is the canonical place for:
- crate name and version
- package metadata
- dependencies and dev-dependencies
- publication posture
If the public capability of the crate changes, update Cargo.toml first and then reflect the effect in README.md and GUIDE.md.
atxt is expected to auto-detect capabilities from the runtime environment. These are environmental inputs, not project config:
TERMCOLORTERMNO_COLORTMUXSSH_CONNECTION- terminal width and height
Future implementation may also inspect whether stdout is a TTY and whether the session can support animation safely.
No atxt-specific environment variables are required today.
These are intentionally outside the current configuration model:
- a mandatory
atxt.tomlfile for normal operation - renderer-specific hidden global state
- per-format config systems that bypass shared detection logic
Normal use should stay close to zero-configuration.