Technical Notes
PennyDAO is a decentralized application built on Ethereum. Using Solidity 0.8.0 to write the contracts, React.js to create the user interface to the smart contracts and Brownie for testing.
Using Solidity, PennyDAO smart contracts are built using ERC-20 and ERC-721 core functionalities. There are two user categories, students and CHANGE-makers. The students will have ERC-721 NFTs minted as an application to participate within PennyDAO. These NFTs will be processed and placed in a voting queue. Pending approval, the students will then have access to grants distributed by PennyDAO.
CHANGE-makers will deposit $DAI stablecoin into the PennyDAO fund and $CHANGE token will be minted. The DAI is then deposited into a yielding strategy and PennyDAO will have access to an advanced yield loan.
We have created an ERC-20 token ($CHANGE) that only holds a 100:1 value to DAI stablecoin and can only be used as voting rights within the PennyDAO ecosystem. It cannot be transferred/swapped or sold on an exchange.
Within the voting function, PennyDAO is actively tracking $CHANGE balances and NFT applications, creating voting periods and internally calculating the voting weight of each voter. The vote will conclude after a predetermined time frame and approved applications will be marked as such.
Both contracts are connected through the voting mechanism. Once the NFT application is approved, the student that owns that NFT will then have the proper authorization to access the grant.
PennyDAO has created a website that connects the users within the ecosystem. The website is a portal for students to submit applications and accept financial support and CHANGE-makers to deposit DAI stablecoin, receive $CHANGE, and participate in the voting process. The website is connected to the smart contract using React.
Last modified 5mo ago
Export as PDF
Copy link