bascule-oss/docs/quickstart.md
Tyler King 6eb2de5dc0 docs: update all documentation for management API + dashboard
Updated 9 files to reflect:
  Management API (axum, port 9090) — embedded in bascule-server
  Dioxus dashboard components (WASM web target)
  6 crates in workspace (was 4)

README.md:
  Added Management API + Dashboard features section
  Added dashboard row to comparison table

docs/architecture.md:
  Updated diagram showing dual-listener architecture
  Added Management API section explaining Arc<SessionStore> sharing
  Updated crate table (6 crates)

docs/configuration.md:
  Added [dashboard] config section reference

docs/observability.md:
  Added Management API monitoring section with curl examples

docs/quickstart.md:
  Added Management API quick start section

docs/comparison.md:
  Added dashboard and TPM attestation rows

CLAUDE.md + CONTRIBUTING.md:
  Updated crate lists and feature flags

config/bascule.example.toml:
  Added [dashboard] section

All 17 README links verified valid. Build clean.

Signed-off-by: Tyler King <tking@guildhouse.dev>
2026-04-05 17:17:18 -04:00

79 lines
1.4 KiB
Markdown

# Quick Start
## Option 1: Build from Source
```bash
git clone https://github.com/your-org/bascule.git
cd bascule
cargo build --release -p bascule-server
./target/release/bascule --config config/bascule.example.toml
```
In another terminal:
```bash
ssh -p 2222 localhost
```
## Option 2: Container Mode
```bash
# Build a curated shell image
docker build -t bascule-shell:k8s-ops images/k8s-ops/
# Create a config
cat > my-config.toml << 'TOML'
listen_addr = "0.0.0.0:2222"
[auth]
mode = "accept-all" # For testing only!
[container]
image = "bascule-shell:k8s-ops"
ephemeral = true
hardened = true
TOML
./target/release/bascule --config my-config.toml
```
## Option 3: Proxy Mode
```bash
cat > proxy-config.toml << 'TOML'
listen_addr = "0.0.0.0:2222"
[auth]
mode = "accept-all"
[proxy]
target_host = "192.168.1.100"
target_port = 22
target_key_path = "/path/to/key"
accept_target_host_key = true
TOML
./target/release/bascule --config proxy-config.toml
```
## Management API
The management API starts automatically on port 9090:
```bash
# Check server health
curl http://localhost:9090/api/health
# View active sessions
curl http://localhost:9090/api/sessions
# Aggregate stats
curl http://localhost:9090/api/stats
```
## Next Steps
- [Configuration Reference](configuration.md)
- [Authentication Setup](authentication.md)
- [Architecture Overview](architecture.md)
- [Container Images](../images/README.md)