bascule-oss/CONTRIBUTING.md
Tyler King 2fa92f8635 docs: comprehensive documentation + developer experience polish
New files:
  CONTRIBUTING.md — dev setup, code style, PR process
  CLAUDE.md — workspace context for Claude Code
  Makefile — build, test, lint, fmt, docker, helm-lint, dev, ci
  .editorconfig — consistent formatting
  rustfmt.toml — Rust formatting config
  docs/kubernetes.md — Helm install, values, architecture
  docs/bascule-shell.md — client shell install, config, TPM
  charts/bascule/README.md — Helm quick start

Updated:
  README.md — accurate feature matrix, clear shipped vs planned
  config/bascule.example.toml — full reference (72 lines, all fields)

All 15 README links verified valid.
Helm lint clean. Build passes. 0 substrate deps.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 10:53:08 -04:00

1,021 B

Contributing to Bascule

Development Setup

git clone https://github.com/your-org/bascule.git
cd bascule
cargo build --all
cargo test --all

Architecture

Bascule is a Rust workspace:

Crate Purpose
bascule-core Library — SSH server, auth, PTY, proxy, container, hooks
bascule-server Binary — CLI, config, telemetry
bascule-auth-agent-id Optional — Entra Agent ID auth
bascule-shell Binary — Identity-aware login shell

Testing

cargo test --all

Code Style

  • cargo fmt before committing
  • cargo clippy must pass
  • No unwrap() in production code
  • All public items need doc comments

Pull Request Process

  1. Create a feature branch
  2. Ensure make ci passes
  3. Update docs if adding features
  4. Submit PR against main

Commit Messages

Format: type: description Types: feat, fix, docs, chore, refactor, test

License

By contributing, you agree your contributions are licensed under Apache 2.0.