Lux Docs
Lux Skills Reference

Lux DAO - Governor Contracts & Governance Platform

Documentation for Lux DAO - Governor Contracts description: '## Quick reference' Governance Platform

Overview

Lux DAO is the decentralized governance platform for the Lux Protocol ecosystem. It provides modular governor contracts, fractal (nested) DAO support, on-chain identity with Karma reputation, and a React frontend at lux.vote. Built on @luxfi/standard contracts with political-terminology naming (Council, Charter, Sanction, Veto).

Quick reference

ItemValue
Repogithub.com/luxfi/dao
Branchmain
LanguagesJavaScript, TypeScript, Solidity, Shell
FrontendReact 18 + Vite + Chakra UI
Web3Wagmi v2, Viem v2, RainbowKit v2
Wallet SDK@luxfi/wallet (EVM + Solana omnichain)
ContractsHardhat + Foundry (Solidity)
Local chainAnvil (chain ID 1337)
E2E testsPlaywright
Package managerpnpm
Domainlux.vote

Project Structure

dao/
├── app/                 # React frontend (Vite, port 5173 dev / 3000 prod)
│   └── src/
│       ├── components/  # React components
│       ├── pages/       # Route pages
│       ├── providers/   # Context providers
│       └── utils/       # Utilities
├── contracts/           # Smart contracts (@luxfi/contracts, submodule)
│   ├── contracts/       # Solidity source
│   ├── ignition/        # Hardhat Ignition deployment modules
│   └── publish/         # ABIs and addresses (re-exports @luxfi/standard)
├── api/                 # Backend API (placeholder)
├── sdk/                 # TypeScript SDK (submodule)
├── subgraph/            # Graph Protocol integration
├── packages/
│   ├── brand-config/    # Branding configuration
│   ├── component-library/ # Shared UI components
│   ├── governance-hooks/  # React hooks for governance
│   ├── treasury-subgraph-client/ # Treasury subgraph client
│   ├── ui/              # UI package
│   └── wallet/          # @luxfi/wallet SDK (RainbowKit + Solana)
├── e2e/                 # Playwright E2E tests
├── compose.yml          # Full stack (Anvil, API, PostgreSQL, Redis, IPFS)
├── Makefile             # All commands
└── scripts/             # Start/stop/deploy scripts

Governance Contracts (Political Terminology)

From @luxfi/standard -- the one source of truth:

ContractPolitical AnalogPurpose
CouncilLegislative BodyProposal management, voting coordination
CharterConstitutionVoting strategy + rules + constitutional text
SafeTreasuryAsset custody, transaction execution
VetoVeto PowerParent DAO blocks child actions
SanctionEnforcementGuard that enforces veto decisions
IdentityCitizenshipGovernance token representing voting power
SecretariatAdmin OfficeModule integration and admin functions

Identity System (LP-3006)

Three-layer on-chain identity:

LayerContractPurpose
W3C DIDDIDRegistrydid:lux:<id> identifiers, verification methods
SoulIDSoulID.solSoulbound NFT with reputation fields (humanity, governance, community, protocol)
KarmaKarma.sol + KarmaController.solNon-transferable reputation token with activity-driven decay

Key functions: createIdentity(), getVotingPower() (karma x trust), canPropose() ( >= 100 KARMA), isHuman() (humanityScore >= 50).

Treasury Contracts (OHM-Style Bonding)

ContractPurpose
LiquidBond.solOHM-style bonding for ASHA with multi-collateral
CollateralRegistry.solBondable assets with risk tiers
Bond.solTreasury bond issuance with vesting
Recall.solParent DAO fund recall (ALLOCATED only, not BONDED)
FeeRouterAutomatic fee distribution
GaugeControllerEpoch-based allocation voting

Collateral tiers: TIER_1 (ecosystem, 25% discount), TIER_2 (majors, 20%), TIER_3 (LP, 15%), TIER_4 (volatile, 10%). All pricing in satoshis, not USD.

Fractal Governance

Same governance patterns repeat at every scale:

  • L1 DAO (Sovereign): Full autonomy, creates child DAOs
  • L2+ DAO (Nested): Own Safe, parent can Veto/Sanction
  • Each level: Council + Charter + Safe
  • Fork freedom: disagreement leads to new DAO, no permission needed
  • Exit liquidity: members can always withdraw

Development Commands

# Makefile (recommended)
make install          # Install all dependencies
make up               # Start local stack (Anvil + app)
make dev              # Start with hot reload
make down             # Stop services
make test             # Run all tests (unit + E2E)
make test-unit        # Run unit tests (Hardhat)
make test-e2e         # Run Playwright E2E
make deploy           # Deploy contracts to local network
make compile          # Compile contracts
make format           # Format code
make lint             # Lint code

# Docker full stack
make up-docker        # Anvil + API + PostgreSQL + Redis + IPFS
make down-docker      # Stop Docker services
make build-docker     # Build Docker images

Package Dependencies

@luxfi/standard   — Core governance ABIs (Council, Charter, Identity, Veto, Sanction)
@luxfi/contracts  — Re-exports ABIs from @luxfi/standard + network addresses
@luxfi/wallet     — Omnichain wallet SDK (RainbowKit + Solana)

Network Configuration

NetworkChain IDPurpose
Localhost1337Development (Anvil)
Ethereum1Production
Optimism10L2
Polygon137L2
Base8453L2
Sepolia11155111Testnet

Deployment

TargetDomain
Lux DAOlux.vote
Pars DAOpars.vote (GitHub Pages, separate repo parsdao/pars.vote)
  • lux/lux-governance.md -- On-chain voting overview, LP proposals
  • lux/lux-safe.md -- Multisig smart accounts (Safe-Global fork)
  • lux/lux-node.md -- Validator integration with governance

On this page