Project name
DAO NFT Bank System
Project track
NFTs / ThetaPass
Elevator pitch
DAO NFT Bank System can deposit ERC20 tokens into banks for lock-up, and can obtain NFT rewards with ERC721 attributes. In this way, the circulation of ERC20 tokens can be controlled and the currency price can be increased.
Team Name
RainbowCity Foundation
Submission links
Project demo website: https://daonftbank.rainbowdao.io/
GitHub repository: https://github.com/RainbowDAO/DAO-NFT-Bank-01
Solidity-Version-contract (GitHub): https://github.com/RainbowDAO/DAO-NFT-Bank-01/tree/main/contracts
Frontend code (GitHub): https://github.com/RainbowDAO/DAO-NFT-Bank-01-Front-end
Picture (GitHub): https://github.com/RainbowDAO/DAO-NFT-Bank-01/tree/main/PIC
Recorded video demo
Testnet Deployment Information
1.Rinkeby Test
Network Name: Rinkeby Test Network RPC URL: https://rinkeby.infura.io/v3/
Contract deployment address
RbtDeposit721: 0x656547539dc37d8dF93d59a4D50f7340Edf85146
RBT: 0x218a1BeF2470b15c199b0bDb532C5ea272272Ed3
RainbowBank: 0x93Aa565F3313C3948e12a113Fb97919700209b88
2.Theta Test
Network Name: Theta Test Network
RPC URL: https://eth-rpc-api-testnet.thetatoken.org/rpc
Contract deployment address
RainbowBank: 0x8c5d4de5f325e10f6959880d02743f1738f34a7f
RBT: 0x6d1796ae48a49be1eb95e81964e0a1623d9c188b
RbtDeposit721: 0xa5aa8801b59d0a15cd35ccacb60b9eba7356cf8e
Project social media:
RainbowDAO website: http://www.rainbowdao.io
RainbowCity website: https://www.rainbowcity.io
Twitter: https://twitter.com/RainbowDAOio
Discord: https://discord.gg/vbnvFEeYRr
Telegram: https://t.me/RainbowDAO
Medium: https://medium.com/rainbowcity
Github: https://github.com/RainbowDAO
Email: Rainbowcitydao@gmail.com
Project Story
Inspiration
In all types of DAO organizations, the hedging management of governance Token is a vitally important job. How to guide the community members to hedge Tokens is a critical module in terms of the liquidity of the governance Token management. As many governance Tokens lack a hedging system, when the flow of Token becomes greater and greater, the actual value of Token will continue to decrease to lead to the final failure of the whole project. With this inspiration and to tackle the problem, we designed and developed a DAO NFT Bank System that can guide the community members to hedge Tokens. This is the first application scenario of the system.
DAO NFT Bank System has another application scenario that enables hedging when a new project initializes and the initial coins are distributed to all VC and seed users. In this way, we cam make it happen that the respective ERC20 Tokens can be deposited into our NFT Bank system with a relative hedging date and an NFT certificate. These NFT certificates are considered the initial investing proof. This can completely solve the pivotal hedging issue the initial investors have, which is also the second important application scenario of this Bank system.
What it does
DAO NFT Bank System is one of the DAO infrastructure products developed by the RainbowCity Foundation, providing the governance Token hedging banks and NFT motivation system for all of the DAO organizations. This system is designed to lock position of governance Token. NFTs can be rewarded based on the position locking timing and amount. Simply it means that one can deposit ERC20 governance tokens into the hedging bank to get the NFT certificate in the form of ERC721, which is categorized into financial NFT. The rewarded NFT certificates are the equivalent of ERC20 Token deposit receipts. In the future, the NFT deposit receipt holders can withdraw the relative ERC20 governance Tokens by the time of validity.
Meanwhile, in order to guarantee the liquidity of the deposited ERC20 governance Tokens, we developed an NFT mortgage and loan market and an NFT transfer market for NFT deposit receipts. The NFT mortgage and loan market can get loans from the market by pledging the NFT deposit receipts. The NFT certificates can be cashed in the NFT transfer market by transferring the ownership.
How we built it

⑴ Create an ERC Token using the ERC20 factory and set basic information such as Token name, circulation, logo, decimals etc.
⑵ Create a DAO NFT bank with bank's name, mortgaged governance Token address, time set-up of the mortgage and NFT's title.
⑶ NFT badge contains information as follows: NFT serial No., NFT initial creator, NFT current holder, NFT lock-position time, NFT whole governance badge name, NFT whole governance badge quantity, lock-position end time, lock-position remaining days, withdrawal button.
⑷ Pledge governance Tokens and create an NFT badge: choose deposit amount, choose deposit duration, complete NFT badge.
⑸ To get the liquidity during the mortgage period, we can pledge the NFT badges in the mortgage and loan market to get borrow certain amount of money.
⑹ Loaning orders contain information as follows: loan Token, loan amount, loan period, loan start time, estimated payment date, remaining days, loan rates, loan actual interests and payback.
⑺ To get the liquidity during mortgage, one can sell their NFT badges in the transfer market.
⑻ The transfer market orders contain information as below: order serial No., NFT serial No., NFT initial creator, NFT current holder, NFT set time, NFT expiry date, unlock remaining time, NFT transfer price, whole Token amount and transfer fees.
⑼ Anyone can buy the available NFTs through the transfer market and gain tokens included in this NFT. As soon as the hedging date expires, one can get withdraw the token from the bank with the NFT lock-position badge.
Challenges we ran into
In the process of developing this system, how to regain the liquidity of the ERC20 tokens once they are position-locked into the bank was our greatest challenge. Only solving this problem can ensure the community members to choose lock-position.
To resolve this problem, we brought up two solutions. The first one is to establish an NFT mortgage and loan market. All community members can pledge the NFT certificates to the market to get money. In this scenario, community members can get some liquid fund without losing the NFT certificates.
The second solution is to build an NFT transfer market to make freely transfer NFT certificates possible. When community members who own the locked NFTs can not wait until the lock-position expiry date, they can directly sell the NFT certificates in the transfer market to get the liquidity. Of course, the transfer of NFT certificates means losing the ERC20 tokens locked in NFTs.
These two solutions mentioned can meet the community members diverse needs. On one hand, the liquidity of ERC20 governance tokens can be locked up and on the other hand, it can be released again in the form of NFT to make the financial assets circulate.
Accomplishments that we're proud of
In the process of developing this system, it was our greatest pride to innovate the financial NFT assets.
Different from the traditional NFT, the financial NFTs have their real assets to back up. They transform finance's benefits to the form of NFT to be able to circulate and transfer.
What we learned
In the process of development, we had learned how to combine ERC20 token with ERC721 token in synergy and let them exchange freely. Meantime, the innovated application scenario was about to open a blue sea for the financial NFT market.
What's next for DAO NFT Bank
In the next move, we will cautiously examine the product logics behind DAO NFT bank, reconstruct and upgrade code to make a complete application-marketable product come true.
After the product logics and codes are audited by our team, we will make a proposal to the external audit. Ultimately this product will be realistically deployed on the public-chain networks to provide diverse service for all types of DAO organizations.
Project UI
1-Create-NFT-Bank

2-Create-NFT-Bank

3-NFT-Bank-Home

4-NFT-Bank-Stake

5-My-Loan-Information

6-My-Loan-Information-Order

7-My-Loan-Information-Order

8-Already-Lent-Out

9-Borrowing-Market

10-Token-Assignment-Market-Buy

11-Token-Assignment-Market-Buy

12-Token-Assignment-Market-Sell


Log in or sign up for Devpost to join the conversation.