vantus 0.3.0

Macro-first async Rust backend framework with explicit composition, typed extraction, and hardened HTTP defaults.
Documentation
# CLI Reference

`vantus` now includes an optional first-party CLI bootstrap layer behind the `cli` feature.
The runnable entrypoint lives in `examples/cli.rs`.

This CLI is for runtime concerns:

- choosing config file, environment, and profile
- enabling or disabling the built-in web platform and observability modules
- setting request body and timeout overrides
- configuring the in-memory global rate limiter
- selecting the shared request-ID generator
- previewing the startup plan with `--print-startup-plan` or `--dry-run`

Startup plans annotate whether each value came from the CLI, a runtime mode preset, a feature default, or still depends on config/default resolution.

It does not control Cargo build profiles. Use:

- `cargo run` for debug/dev binaries
- `cargo run --release` for optimized release binaries

## Example

```powershell
cargo run --example cli --features cli -- `
  --mode production `
  --config examples/application.properties `
  --web-platform `
  --observability `
  --request-timeout-ms 5000 `
  --max-body-bytes 65536 `
  --rate-limit-capacity 120 `
  --rate-limit-refill-tokens 120 `
  --rate-limit-refill-seconds 60
```

## Runtime Mode

`--mode development` and `--mode production` apply runtime defaults for:

- environment/profile if not explicitly set
- request timeout if not explicitly set
- max body size if not explicitly set

Explicit CLI flags still win over the mode preset.

## Recommended Flags

- `--config <PATH>` to pin the config file used in production
- `--environment <NAME>` and `--profile <NAME>` when you need runtime separation
- `--observability` for `/live`, `/ready`, `/diag`, and `/metrics`
- `--web-platform` for `/health`, `/info`, security headers, and panic recovery
- `--dry-run` in CI or release automation to validate startup intent before launch