A shared infrastructure effort for cooperatives, communities, and federations.
ICN is institutional infrastructure for democratic organizations. It is being built so cooperatives, communities, and federations can prove decisions, operate on infrastructure they control, and coordinate across organizational boundaries without handing those functions to a platform landlord.
The Rust workspace lives in icn/. The public site lives in website/. The project is large and uneven in maturity, so the fastest way to avoid getting lost is to start from the right entrypoint for your role.
- Understand the project first: start with intercooperative.network, especially What is ICN, What's Real Now, and Get Involved.
- Contribute technically: read docs/GETTING_STARTED.md, then CONTRIBUTING.md, then docs/onboarding/README.md. For a first scoped contribution, start with good first issues.
- Contribute non-technically: use the public Get Involved page for docs, design, testing, research, policy, and ecosystem paths, then open a GitHub Discussion or issue once the work is concrete.
- Bring an institutional use case: read For Cooperatives and What's Real Now, then open a GitHub Discussion.
- Support the work financially: the live rail today is GitHub Sponsors.
If you want to build the codebase and orient quickly:
git clone https://github.com/InterCooperative-Network/icn.git
cd icn/icn
cargo build
cargo test --workspace --libBefore opening a PR, read:
- AGENTS.md for repo operating rules, verification routing, and invariants
- CONTRIBUTING.md for architectural guardrails
- docs/GETTING_STARTED.md for a cleaner contributor-first startup path
- Decentralized Identity — DIDs with Ed25519 cryptography and Age-encrypted keystores
- Trust Graph — Web-of-participation trust computation with signed attestations
- Mutual Credit Ledger — Double-entry accounting with Merkle-DAG integrity
- Cooperative Contracts — CCL (Cooperative Contract Language) for expressing bylaws, agreements, and governance
- P2P Networking — QUIC/TLS sessions with mDNS discovery and gossip replication
- Democratic Governance — Proposals, voting, and parameter management
- Distributed Compute — Trust-gated task execution with receipt settlement
ICN implements a constraint enforcement architecture:
CCL Document (constitution / bylaws / treaty)
|
App / Policy Oracle (governance, trust, ledger)
|
ConstraintSet (rate limits, credit ceilings, voting weights)
|
Kernel enforces constraints mechanically
The kernel never sees "trust scores" or "governance rules" — only generic constraints. This is the Meaning Firewall: domain semantics stay in apps, the kernel stays predictable.
See docs/ARCHITECTURE.md for the full architecture documentation.
The repo is split across several surfaces:
icn/— Rust workspace: crates inicn/crates/, runtime apps inicn/apps/, binaries inicn/bins/website/— public site forintercooperative.networkdocs/— architecture, reference, contributor, and operator documentationinstitutions/— in-monorepo institution packages such asinstitutions/nycn/, kept boundary-clean for later extractionsdk/— TypeScript and React Native SDK workdeploy/— deployment manifests and cluster configuration
| Service | Port | Protocol | Purpose |
|---|---|---|---|
| Peer Transport | 7777 | QUIC/UDP | P2P communication |
| RPC API | 5601 | HTTP | CLI control (icnctl) |
| Metrics | 9100 | HTTP | Prometheus exporter |
| Health | 8080 | HTTP | Health checks |
cd icn
cargo build
cargo fmt --all --check
cargo clippy --workspace --all-targets --all-features -- -D warnings
cargo test --workspace --libRun the checks that match what you touched. AGENTS.md is the routing table for Rust crates, website work, SDK work, and docs changes.
ICN implements three-layer security:
- Transport — QUIC/TLS with DID-TLS certificate binding
- Message — Ed25519 signed envelopes with replay protection
- Application — E2E encryption with X25519-ChaCha20-Poly1305
Trust-gated rate limiting enforces per-actor throughput bounds based on trust class. See docs/production-hardening.md.
- docs/GETTING_STARTED.md — developer and evaluator startup path
- CONTRIBUTING.md — contribution guardrails and PR expectations
- docs/onboarding/README.md — deeper developer onboarding curriculum
- docs/INDEX.md — master doc navigation
- docs/ARCHITECTURE.md — architecture deep dive
- docs/STATE.md — current project snapshot
- Production Hardening — security and deployment
ICN is real, active, and uneven in maturity. The strongest parts today are provenance, cryptographic identity, and the decision-to-record path. Member-facing polish, broader execution coverage, and cleaner onboarding surfaces are still being built. For the current truth plane, read docs/STATE.md and the public What's Real Now page.