Skip to content

Contributing

Thank you for contributing to Attestack.

Terminal window
git clone https://github.com/kiket-dev/attestack.git
cd attestack
rustup toolchain install stable
cargo build
./scripts/check.sh

Install pre-commit hooks (optional):

Terminal window
pip install pre-commit
pre-commit install
PathPurpose
crates/attestack-coreTypes, hashing, verification, signatures
crates/attestack-storeLocal .attestack/ store and bundles
crates/attestack-cliUser-facing CLI
crates/attestack-mcpMCP server for agent integrations
docs/Canonical documentation sources
site/Astro Starlight docs site (synced from docs/)
examples/Workflows and integration examples
testdata/Golden fixtures for tests

Before opening a PR:

Terminal window
./scripts/check.sh # fmt + clippy + tests
./scripts/smoke.sh # release binary e2e (optional)
./scripts/build-docs.sh # docs site build (optional)
  • Unit tests live in each crate’s src/ (#[cfg(test)])
  • CLI integration tests: crates/attestack-cli/tests/
  • Golden fixtures: testdata/

Edit files in docs/, then run node site/scripts/sync-content.mjs. Preview with cd site && npm run dev.

Report vulnerabilities privately — see SECURITY.md in the repository root.

By contributing, you agree that your contributions will be licensed under the MIT License.