Home

Awesome

Council

Build Status Coverage Status License Static Badge

Council is a decentralized governance system that allows a community to manage a DAO. The governance system is designed to enable flexibility, improvements, and experimentation while successfully maintaining the security and robustness of the governed protocol.

Council is inspired by and extends several forerunners in the DAO governance space including MakerDAO's governance model and the Compound Governor contracts. Like these systems, it is a fully on-chain voting architecture that coordinates the process of making permissioned smart contract calls from privileged addresses.

Council contains several architectural choices which make it a distinct new primitive in the decentralized governance space:

Contributing to Council

Council is a community-driven governance protocol and there are many ways to contribute to it. We encourage you to jump in and improve and use this code whether that be contributing to Council directly, forking the governance framework for your own use, or just taking bits and pieces from it. We want everyone to build with us!

If you have a suggestion for a new feature, extension, or cool use case and want to help the community, drop by the #developers channel in our discord to discuss and you will have a warm welcome!

When contributing, please be sure to follow our contribution guidelines when proposing any new code. Lastly, because Council is a community-driven governance protocol, any new code contributions are more likely to be accepted into future deployments of the protocol if they have been openly discussed within the community first.

For a technical overview of Council's smart contracts, please read our documentation here.

Architecture Overview Diagram

image

Build and Testing

1. Getting Started (Prerequisites)

2. Setup

git clone git@github.com:delvtech/council.git
cd council
npm install

3. Build

npm run build

4. Test

npm run test

Contributing

Council is a community-driven protocol and there are many ways to contribute to it. We encourage anyone to use this as their protocol or DAOs governance system. If you are interested in building on top of it, improving the code, please do!

Support

If you have any questions, feedback, ideas for improvement, or even further experiments to test out with Council, come join our #governance discord channel to talk more about this!