nav.brand
docs.title/DAO Governance

DAO Governance

Proposals, voting and treasury — on chain

docs.viewTemplate

docs.h.overview

A governance portal: create proposals, vote with your governance token, track quorum and execute on-chain. Includes an OpenZeppelin Governor + treasury view.

DAO Governance gives your community a place to propose, debate and vote. The UI lists active/past proposals with quorum and vote tallies, a voting modal bound to your governance token, and a treasury overview.

Built on the OpenZeppelin Governor stack (Governor + TimelockController + ERC20Votes). The wizard wires your token, voting delay/period and quorum, and deploys the governor.

docs.h.included

  • Next.js 16 app (App Router, TypeScript, Tailwind)
  • Governor + Timelock + Votes token (Hardhat)
  • Proposal indexing helpers
  • Dockerfile + docker-compose
  • README + setup wizard

docs.h.contracts

  • GovToken.sol — ERC-20 governance token with on-chain voting and gasless approvals (OpenZeppelin ERC20Votes + ERC20Permit).
  • MyGovernor.sol — OpenZeppelin Governor: settings, simple counting, quorum fraction and timelock execution.
  • TimelockController — OpenZeppelin timelock that holds the treasury and executes passed proposals.

docs.h.stack

docs.stackLine

docs.chainsLine

docs.h.quickstart

docs.quickstartP

unzip dao-governance.zip && cd dao-governance
npm install
npm run dev

docs.quickstartUrl

docs.h.configure

docs.configureP

  1. docs.wizard.1
  2. docs.wizard.2
  3. docs.wizard.3
  4. docs.wizard.4
  5. docs.wizard.5
Tip · docs.configureTip

docs.configureP2

docs.h.customize

docs.h.branding

docs.brandingP

docs.brandingP2

docs.h.languages

docs.languagesP

docs.h.editing

docs.editingP

docs.h.configRef

docs.configRefP

  • docs.configRef.1
  • docs.configRef.2
Tip · docs.configRefTip

docs.h.deployContracts

docs.deployContractsP

# compile + copy artifacts the app/wizard use
npm run compile

# deploy to the network in your .env (RPC_URL + DEPLOYER_PRIVATE_KEY)
npm run deploy

docs.deployContractsP2

docs.h.deployApp

docs.h.vercel

  1. docs.vercel.1
  2. docs.vercel.2
  3. docs.vercel.3

docs.h.docker

docs.dockerP

# build + run; with no .env it opens the setup wizard
docker compose up --build

# once you have a .env, pass it in:
docker run --env-file .env -p 3005:3000 dao-governance

docs.dockerP2

docs.h.vps

docs.vpsP

npm install
npm run build
npm run start   # serves the production build

docs.h.checklist

  • docs.checklist.1
  • docs.checklist.2
  • docs.checklist.3
  • docs.checklist.4
  • docs.checklist.5

docs.h.support

docs.supportP