marketDAO

MarketDAO

MarketDAO is a governance framework that brings market forces to bear on group decisions. The key innovation is a system where voting rights can be freely bought and sold during elections, allowing market forces to influence governance outcomes.

Core Concept

Unlike traditional DAOs where voting power is static, MarketDAO introduces tradable voting tokens for each election. This creates a dynamic where voters can:

Features

Implementation Details

Lazy Token Distribution

To minimize gas costs when elections are triggered, voting tokens use a “lazy minting” approach:

Early Election Termination

To allow proposals with overwhelming support to execute quickly without waiting for the full election period:

Join Request System

Non-token holders can request to join the DAO through a special mint proposal:

  1. Non-holder submits a join request (creates a MintProposal for 1 token to themselves)
  2. The proposal enters the standard support phase
  3. Existing members add support if they approve
  4. If support threshold is reached, an election is triggered
  5. Members vote on the join request
  6. If approved, the new member receives 1 governance token and full DAO access
  7. If rejected, they remain a non-holder

Snapshot-Based Voting Power

To enable unlimited scalability without gas limit concerns:

Parameter Proposals (Governance Configuration)

All DAO configuration parameters can be modified through democratic governance via Parameter Proposals:

Distribution Proposals (Proportional Distributions)

Distribution Proposals enable fair, proportional distributions of assets (ETH, ERC20, ERC1155) to all token holders:

Important: The amountPerGovernanceToken parameter is a TARGET, not a guarantee. Actual payouts are calculated pro-rata based on total registered shares vs actual pool balance.

Security & Scalability

MarketDAO has been audited by Hashlock Pty Ltd (January 2026). The audit has been completed and all findings have been addressed.

Security Features

Scalability Guarantees

Known Limitations (By Design)

Configuration

Flags Bitfield

The flags parameter controls optional features:

Common configurations:

Usage Flow

For New Members (Join Request):

  1. Connect wallet to the DAO interface
  2. Submit join request with a description
  3. Wait for existing members to add support
  4. If threshold met, members vote on admission
  5. If approved, receive 1 governance token

For Token Holders (Standard Proposals):

  1. Create a proposal (Resolution, Treasury, Mint, Parameter, or Distribution)
  2. Proposals need to reach support threshold to trigger an election
  3. When threshold is reached, an election period begins
  4. Claim voting tokens (1:1 with vested governance tokens)
  5. Cast votes by sending voting tokens to YES/NO addresses
  6. Successful proposals are executed automatically

For Distribution Proposals:

  1. Create distribution proposal specifying asset type and amount per token
  2. Register during support/election phases to be included
  3. If approved, funds transfer to a DistributionRedemption contract
  4. Claim your proportional share at any time after execution

Development

Build & Test Commands

# Build the project
forge build

# Run all tests
forge test

# Run a single test
forge test --match-test testFunctionName

# Run tests in a specific file
forge test --match-path test/FileName.t.sol

# Format code
forge fmt

# Deploy locally
forge script script/Deploy.s.sol --rpc-url http://localhost:8545 --broadcast

Project Structure

marketDAO/
├── src/
│   ├── MarketDAO.sol           # Core DAO contract (ERC1155-based)
│   ├── Proposal.sol            # Abstract proposal base class
│   ├── ProposalTypes.sol       # Concrete proposal implementations
│   ├── ProposalFactory.sol     # Factory for creating proposals
│   └── DistributionRedemption.sol  # Handles distribution claims
├── script/
│   ├── Deploy.s.sol            # Default deployment
│   ├── Deploy.controlled.s.sol # Controlled supply deployment
│   └── Deploy.private.s.sol    # Restricted purchases deployment
├── test/                       # Comprehensive test suite
├── frontend/                   # React frontend application
├── foundry.toml               # Foundry configuration
└── CLAUDE.md                  # Development guide

Future Possibilities

License

MIT