Inspiration
The rise of decentralized finance (DeFi) and blockchain protocols has highlighted the critical need for robust, community-driven governance. We were inspired by the potential of Decentralized Autonomous Organizations (DAOs) to empower users and stakeholders. Our goal was to create a transparent and efficient governance system for the Runes protocol on Starknet, a cutting-edge ZK-Rollup L2 solution. We envisioned a future where the protocol's evolution is not dictated by a central entity but by the collective will of its community, ensuring its long-term health and alignment with user interests. This led to the creation of RunesDAO.
What it does
RunesDAO is a fully functional DAO built on the Starknet blockchain to govern the Runes protocol. It provides a complete framework for decentralized decision-making, empowering the community to collectively manage the protocol's future.
Key features include:
Proposal Submission: Any community member holding a sufficient amount of governance tokens can submit proposals for changes or new initiatives.
Decentralized Voting: Token holders can cast votes on active proposals. Voting power is proportional to the number of tokens they hold, ensuring that those most invested in the protocol have a stronger voice.
Automated Execution: Once a proposal passes the voting threshold, its associated code can be automatically executed by the DAO's smart contracts, ensuring trustless implementation.
Treasury Management: The DAO governs a community treasury, allowing for the funding of ecosystem development, grants, marketing, and other community-approved initiatives.
How we built it
We built RunesDAO using a modern, full-stack Web3 technology stack.
Smart Contracts: The core logic of the DAO is powered by smart contracts written in Cairo, the native language for Starknet. We leveraged the robust and audited OpenZeppelin Contracts for Cairo to ensure security and adherence to best practices for standards like ERC20 (for our governance token) and governor contracts.
Frontend: The user interface was built with React and the Next.js framework, creating a fast and responsive user experience.
Blockchain Interaction: We used Starknet.js on the frontend to communicate seamlessly with the Starknet blockchain, allowing users to connect their wallets, view proposals, and cast votes directly from their browser.
The project is structured into two main parts: the on-chain contracts that live on Starknet and a web-based dApp that serves as the portal for the community to interact with the DAO.
Challenges we ran into
Building on a rapidly evolving platform like Starknet presented unique challenges. We had to quickly get up to speed with the Cairo 1.x syntax and its unique concepts, like the ownership model. Integrating the frontend with the Starknet blockchain also required careful handling of wallet connections and contract interactions, as the tooling and libraries are constantly being updated. Ensuring the security and gas efficiency of our Cairo contracts was a top priority and involved extensive testing.
Accomplishments that we're proud of
We are proud to have built a complete, end-to-end governance solution on Starknet. Creating a functional DAO that allows for on-chain proposal submission, voting, and management is a significant achievement. We successfully integrated a modern web application with our Cairo smart contracts, providing a smooth and intuitive user experience for interacting with a complex decentralized system.
What we learned
This project was a deep dive into the Starknet ecosystem. We gained invaluable hands-on experience with Cairo programming, smart contract development on a ZK-Rollup, and the principles of DAO architecture. We also learned how to build a decentralized application from the ground up, connecting a user-friendly frontend with powerful on-chain logic.
Built With
- amazon-web-services
- avnu-paymaster
- bitcoin-npc
- cairo
- next.js
- openzeppelin
- react
- starknet
- starknet.js
- typescript
- vercel
- zktls
Log in or sign up for Devpost to join the conversation.