# Maintainer overview
This crate lives at `jan-cli/` in the Incubator monorepo. The published package is **`jan-cli`** on crates.io; the binary is **`jan`**.
## Layout
```text
jan-cli/
src/ # library + bin
tests/ # CLI smoke tests (assert_cmd)
examples/ # demo / default / packages trees
scripts/ # jan-install.sh, release.sh
docs/ # this MkDocs site
mkdocs.yml
Cargo.toml
```
## Local development
```bash
cd jan-cli
cargo fmt
cargo clippy
cargo test
cargo build --release
```
Monorepo wrappers (`project.meta.yaml`):
```bash
m run jan-cli test
m run jan-cli clippy
m run jan-cli docs-serve
m run jan-cli docs-build
```
## Documentation site
```bash
./serve.sh # mkdocs serve (uses uv if available)
m run jan-cli docs-serve
m run jan-cli docs-build # writes jan-cli/site/
```
Python deps for the site: `docs/requirements.txt` (`mkdocs`, `mkdocs-material`, `pymdown-extensions`).
Keep the README as a concise front door; **this site is the full reference**. When you add a YAML field or built-in, update the matching page here and mention it in `CHANGELOG.md`.
## Tests
- Unit tests live next to the modules (`cron.rs`, `config.rs`, `lib.rs`, …).
- `tests/cli_smoke.rs` drives the `jan` binary against fixture trees under `tests/fixtures/`.
- Example trees under `examples/` are documentation; prefer adding a fixture if a behavior must not regress.
## License
MIT — see `LICENSE.md`. Copyright (c) 2025 patbeagan1.