Inspiration

Social Media Apps are one of the biggest game changers in the Internet era. However, the problem with social media apps is that they are centralized and very opinionated, that is why our content never truly belongs to use, neither we can be sure that it will remain there. Another issue is that with growing number of social media apps, we always have to enter the same data, over and over again. That is why Root Protocol comes as a solution to most of those problems.

What it does

Root Protocol is a stack of smart contracts that live on the TRON blockchain, and acts as a root for any social media app that can be built on top of it. You can easily built/root your dapp to Root Protocol, and get the same data about the users and publications. Additionally, you can customize your platform, so that there can be many social media dapps that are pointing to the same Root what helps users with super fast and easy transition between those platforms.

How we built it

First of all contracts are built with Solidity, and there is also TRC721 contract used for user profiles as NFTs. Current version is deployed to Nile test network. Frontend demo app is built with React and TypeScript, and TronWeb object is used to manage the contract itself on the TRON blockchain.

Challenges we ran into

Quite a few, first of all we had some issues with ERC721 and TRC721 differences and implementation, lack of BTFS web sdk, and lack of support for creating Graph API for TRON based apps. Later on linking libraries works a bit different, and lastly deploying and verifying contracts, plus fetching the contract with TronWeb object brought a lot of issues. All of the related topics can be found below.

TRX721 === ERC721 ? && BitTorrent && Graph How to verify Contracts and Interact with them V2 ABI How to Link libraries and deploy them on TRON

Accomplishments that we're proud of

Solving most of the related problems, was definitely one of the biggest achievements even though our demo had to be run using alternative technologies.

What we learned

TRON has a huge potential as a blockchain, we have learned how to interact with it and we have also learned a lot about it's nature. When building on TRON, devs have to be prepared for using a bit different stack of technologies, such as for example TronLink instead of MetaMask, TronBox instead of Hardhat, and TronIDE instead of Remix.

What's next for Root Protocol

Deploying to the Mainnet and adding official documentation for developers that would like to built dapp on top of it.

Built With

Share this project:

Updates