A ValueFlows-compliant resource sharing Holochain application implementing distributed, agent-centric resource management with embedded governance.
Nondominium is a 3-zome Holochain hApp that enables decentralized resource sharing through:
- Agent identity management with role-based access control
- Resource lifecycle tracking following ValueFlows standards
- Embedded governance for access and transfer rules
- Capability-based security using Holochain's native features
Zome Structure:
zome_person
: Agent profiles, roles, and capability-based accesszome_resource
: Resource specifications and lifecycle managementzome_gouvernance
: Commitments, economic events, and governance rules
Technology Stack:
- Backend: Rust (Holochain HDK/HDI 0.5.x-0.6.x) compiled to WASM
- Frontend: Svelte 5.0 + TypeScript + Vite 6.2.5
- Testing: Vitest 3.1.3 + @holochain/tryorama 0.18.2
- Client: @holochain/client 0.19.0
PREREQUISITE: Set up the Holochain development environment.
Enter the nix shell by running this in the root folder of the repository:
nix develop # Enter reproducible environment (REQUIRED)
bun install # Install all dependencies
bun run start # Start 2-agent development network with UIs
This creates a network of 2 nodes with their respective UIs and the Holochain Playground for conductor introspection.
AGENTS=3 bun run network # Bootstrap custom agent network (replace 3 with desired count)
bun run test # Run full test suite
npm run test:foundation # Basic zome connectivity tests
npm run test:integration # Multi-agent interaction tests
npm run test:scenarios # Complete workflow simulations
npm run test:person # Person management test suite
npm run test:debug # Verbose test output
bun run build:zomes # Compile Rust zomes to WASM
bun run build:happ # Package DNA into .happ bundle
bun run package # Create final .webhapp distribution
bun run --filter ui start # Frontend development server
bun run --filter tests test # Backend test execution
- Agent-Centric: All data tied to individual agents with public/private separation
- ValueFlows Compliance: EconomicResource, EconomicEvent, Commitment data structures
- Privacy by Design: Public profiles with encrypted private data
- Capability-Based Security: Role-based access using Holochain capability tokens
All zomes follow consistent patterns for:
create_[entry_type]
: Creates entries with discovery anchor linksget_[entry_type]
: Retrieves entries by hashget_all_[entry_type]
: Discovery via anchor traversalupdate_[entry_type]
: Updates with validationdelete_[entry_type]
: Soft deletion marking
4-Layer Strategy:
- Foundation: Basic zome function calls and connectivity
- Integration: Cross-zome interactions and multi-agent scenarios
- Scenarios: Complete user journeys and workflows
- Performance: Load and stress testing (planned)
Test Configuration:
- Timeout: 4 minutes for complex multi-agent scenarios
- Concurrency: Single fork execution for DHT consistency
- Agent Simulation: Supports 2+ distributed agents per test
To package the web happ:
bun run package
This generates:
nondominium.webhapp
inworkdir/
(for Holochain Launcher installation)nondominium.happ
(subcomponent bundle)
- ✅ Phase 1: Person management with role-based access control
- 🔄 Phase 2: Resource lifecycle and governance implementation
- Requirements - Project goals and functional requirements
- Specifications - Detailed technical specifications
- Implementation Plan - Development roadmap and phase breakdown
- Governance - Governance model and decision-making processes
- UI Architecture - Frontend architecture and design patterns
- Testing Infrastructure - Testing strategy and framework details
- ValueFlows Action Usage - ValueFlows implementation patterns
- Architecture Overview - Overall zome architecture and interactions
- Person Zome - Agent identity and profile management
- Resource Zome - Resource lifecycle and management
- Holochain: Distributed application framework
- NPM Workspaces: Monorepo management
- hc: Holochain CLI development tool
- @holochain/tryorama: Testing framework
- @holochain/client: UI-to-Holochain client library
- Holochain Playground: Development introspection tools
- ValueFlows: Economic coordination ontology