Decentralized code collaboration infrastructure that can't be taken down, censored, or controlled by any single entity.
Guts is a decentralized, censorship-resistant alternative to GitHub built on commonware primitives. It provides Git-compatible repository hosting, pull request workflows, and issue tracking without centralized control.
The name carries dual meaning:
G.U.T.S. - Github Uncaptured Trustless Sovereign
An acronym capturing the project's essence: a platform that cannot be captured, requires no trust in central authorities, and preserves developer sovereignty over their code.
Guts - The protagonist of Berserk
Like the legendary Black Swordsman who fights against impossible odds, refusing to submit to fate or authority, this project embodies the same defiant spirit. Guts wields the massive Dragon Slayer sword alone against overwhelming forces - just as this project stands against the centralization of code collaboration infrastructure. The character's themes of perseverance, independence, and fighting for freedom resonate with the decentralization movement.
- Decentralized: No single point of failure or control
- Censorship-Resistant: Content cannot be arbitrarily removed
- Git-Compatible: Works with standard Git workflows
- Cryptographic Identity: Ed25519-based identity system
- Byzantine Fault Tolerant: Network consensus for data integrity
# Install from source
cargo install --path crates/guts-cli
# Generate identity
guts identity generate
# Initialize a repository
guts init my-project
# Run a node
cargo run --bin guts-nodeguts/
├── crates/ # Rust workspace crates
│ ├── guts-types/ # Core types and primitives
│ ├── guts-node/ # Full node binary
│ └── guts-cli/ # CLI client binary
├── infra/ # Infrastructure as code
├── docs/ # Documentation
└── .github/ # CI/CD workflows
- Rust (stable)
- Docker (optional, for containerized development)
# Build all crates
cargo build --workspace
# Run tests
cargo test --workspace
# Run lints
cargo clippy --workspace --all-targets
# Format code
cargo fmt --all# Start a development cluster
cd infra/docker && docker-compose up -d
# Or run a single node
cargo run --bin guts-node -- --api-addr 127.0.0.1:8080| Component | Technology |
|---|---|
| Language | Rust |
| Runtime | Tokio |
| Git | gitoxide |
| API | axum + tonic |
| Storage | RocksDB |
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
This project is licensed under either of:
- Apache License, Version 2.0 (LICENSE-APACHE)
- MIT License (LICENSE-MIT)
at your option.
- commonware - Modular blockchain primitives
- Alto - Minimal blockchain reference implementation
- gitoxide - Pure Rust Git implementation