Skip to content

A reverse auction grants app intended for small grants issued by ENS DAO and its working groups. Original idea from Nouns Prop House.

License

Notifications You must be signed in to change notification settings

ensdao/ens-small-grants

 
 

Repository files navigation

ENS Small Grants

This is a platforms designed to help ENS DAO Working Groups distribute grants to a wider range of projects at a regular rate.

Run locally

Install dependencies:

yarn install

Set the environment variables:

cp .env.example .env.local

Run the development server:

yarn dev

Open http://localhost:3000 with your browser to see the result.

Creating a Round

There is no UI for creating a new round, so you will need to do this manually via the rounds table in the database.

Some things to keep in mind:

  • allocation_token_amount is in wei
  • To distribute ETH, set allocation_token_address to 0x00
  • snapshot_space_id is the ENS name of the Snapshot space to use for voting (eg. small-grants.eth)
  • snapshot_proposal_id is the ID of the Snapshot proposal that will be created between proposal_end and voting_start. It should be empty when creating the round.

Setting up Snapshot

When the proposal period is done (after proposal_end and before voting_start), you'll need to set up the Snapshot Space for voting. This can be done with one click in the UI by going to /rounds/{round_id}/snapshot. It will ask you to sign a message and that should create the compatible Snapshot space with all the proposals as options.

Your wallet address must be an admin on the Snapshot space specified in snapshot_space_id during the setup of the round.

You will also need the ArConnect Chrome Extension installed to upload the proposals to Arweave for Snapshot.

Architecture

For the initial implementation, the focus is on speed of deployment, while retaining independent vote audit-ability.

  • During the Proposal Stage, proposal text is stored in a Supabase database.
  • Once Proposal Stage is complete, an admin must create a Snapshot Proposal where each Grant Proposal is a "choice".
  • Once on Voting Stage, the app uses Snapshot as the source of truth for counting votes and applying different voting strategies.

License

This project is licensed under both MIT and Apache 2.0

About

A reverse auction grants app intended for small grants issued by ENS DAO and its working groups. Original idea from Nouns Prop House.

Resources

License

Stars

Watchers

Forks

Languages

  • TypeScript 99.1%
  • Other 0.9%