Inspiration

The inspiration behind the project is quite strange. It all started with a news of murder due to property issue among the children whose parents left behind a property. Reading the news it strike my mind that what would happen to the NFTs in user's wallet incase of his sudden unfortunate death ?

This question raised few questions in my mind which gave birth to SATURN - Safeguard All The Unique & Rare NFTs.

What it does

Saturn allows a owner of NFTs to set a nominee for each of his NFTs he can set different nominee for different NFTs thus enabling him to distribute the NFTs among his children.

Now, there can be some centralized solutions for this but it might take months and months for the nominee to get that NFT and who knows by the time he gets it the price of NFT might have fall down significantly during that period.

Saturn brings up a decentralized solution for this in a 3 step process.

  1. The owner nominates a NFT to a nominee.
  2. Incase of death of the owner the nominee can initiate a fetch request. The owner of NFT is alerted over mail. After this there would be a period of 15 days where the owner has a chance to to reject the fetch request if he is still alive and he finds that the nominee tried to misuse the onchain nomination. After the 15 days if the owner doesn't reject the fetch request he would be considered dead.
  3. After the 15 days period now the nominee can fetch the NFT can become the new owner.

How we built it

Allowing the user to link multiple wallets across different blockchain and fetching his NFTs was powered by Moralis. The alert emails to the owner were again powered by Moralis. Incase the NFT owner sells his NFT after nominating someone, that particular nomination get invalid automatically using the feature of automating smart contracts powered by Chainlink Keepers. The smart contracts were written in solidity and were deployed on Ethereum, Polygon, Binance Smart Chain and Avalanche testnets. The frontend was built using ReactJS.

Challenges we ran into

The major challenge was automating the smartcontract to make a nomination invalid if the NFT is transferred/sold. But the Chainlink Keepers made this step easier and took care of it.

Accomplishments that we're proud of

I am glad that I was able to integrate all the Moralis APIs, Chainlink keepers and build a solid project ready for mainnet deployment.

What we learned

This hackathon was a great learning experience for me all the sessions were very helpful and the roadmap of the sessions was planned really good. And I am sure now I am a better blockchain developer than I was a month ago.

What's next for Saturn

I have started working on Saturn SDK using which any NFT marketplace can integrate it and can provide the feature to the user whenever he purchases a new NFT to add a nominee immediately after the purchase.

Link to SDK : https://github.com/rk-rishikesh/saturn-sdk

Contracts

  1. Rinkeby https://rinkeby.etherscan.io/address/0x4bFa92483a42692B3e64B6cD0b85886b67114656#code
  2. Polygon https://mumbai.polygonscan.com/address/0x5bedE0f54C46cA01DE1C6DAE862753973025D67A
  3. Binance Smart Chain https://testnet.bscscan.com/address/0x4063dC37411a57D4c87599128EcAE5ea132d3594#code
  4. Avalanche https://testnet.snowtrace.io/address/0x7BfDea4Cfb68286dE27d339F0eb6B9411d398287

Built With

Share this project:

Updates