silk-graph 0.2.0

Merkle-CRDT graph engine for distributed, conflict-free knowledge graphs
Documentation
# Contributing to Silk

Contributions are welcome. Here's how to get started.

## Development Setup

```bash
# Clone
git clone https://github.com/Kieleth/silk-graph.git
cd silk-graph

# Build Python wheel (development mode)
pip install maturin pytest
maturin develop --release --features python

# Run full CI check locally (fmt + clippy + rust tests + pytest)
make check

# Or run individual steps
make fmt       # cargo fmt --check
make clippy    # cargo clippy --no-default-features -- -D warnings
make test      # cargo test --no-default-features
make pytest    # pytest pytests/ -v
make examples  # run all example scripts

# Benchmarks
cargo bench
```

A pre-push git hook runs `make check` automatically before every push. Skip with `git push --no-verify` when needed.

## Pull Requests

1. Fork the repo and create a branch from `main`
2. Add tests for any new functionality
3. Run `make check` (mirrors CI exactly)
4. Keep PRs focused — one feature or fix per PR

## Code Style

- Rust: `cargo fmt` (default rustfmt settings)
- Rust: `cargo clippy -- -D warnings` (zero warnings)
- Python: follow existing patterns in `pytests/`

## Architecture

Design decisions are numbered D-001 through D-028 in [DESIGN.md](DESIGN.md). Roadmap items R-01 through R-08 are tracked in [ROADMAP.md](ROADMAP.md) (R-01 through R-08 complete (all roadmap items done)). To run tests with signing: `cargo test --features signing`

## License

By contributing, you agree that your contributions will be licensed under the MIT OR Apache-2.0 dual license.