Inspiration

Our team has chosen the SocialFi track as it is really close to us - we all have been working on social projects throughout our career. So we got together and arranged several evenings of brainstorming, and also read several core papers about DeSo - that’s how the idea of Dwitter arose.

We have identified one of the main problems in communication between celebrities and fans (one of us worked with bloggers and was familiar with such issues) and wanted to solve it. In particular, many well-known people have to close comments on their public pages due to the large flow of so-called trolls who want to argue on every minor issue. Constant scandals with cyberbullying to athletes due to failures in matches and pop stars only add to the severity of the problem.

Also we followed closely and remembered the peak of interest in BitClout. It was a truly interesting project and we decided that the BitClout-like model fits perfectly with the advantages of Dfinity, but also we added token utilization via posting on other user’s pages.

Thus we wanted to put these two things together and to find a solution for communication mess in celebrity’s pages through tokenomics.

What it does

Our project introduces the Pay per Post model and BitClout-like tokenomic. A user can buy another user's token for ICP. Tokens can be used for posting on other user’s pages and as an investment - one can buy another user’s token and sell it later.

Anyone can make a post on a celebrity’s page (and even any other) only by buying their tokens and then redeeming them for posting. Because of that, mainly true fans will communicate (as they need to pay for that). Also there are a bunch of social features like NFT's integration.

Yet another interesting thing is that we also take into account crypto wealth in the formulas of tokenomics, as crypto wealthy people are some kind of celebrity. Thus, the price of your token depends on 2 factors: mainly on the overall number of tokens issued and also on your crypto wealth - the bigger each of these components is, the more expensive the token is.

Main feature list includes:

  • ICP transfer between users and canisters
  • Bitclout-like tokenomics with AMM
  • buying and selling user tokens
  • only NFT you own can be used as avatar
  • calculation of total market price of NFTs owned by user
  • user wall with posts from other users

Plus we have worked hard on architecture and developed the following features:

  • one canister per user that allows scale to a large number of users
  • upgradable canisters
  • auto top-up user canisters with cycles

How we built it

Our team used Motoko for backend and ReactJS for frontend and we deployed the project on Dfinity mainnet. Also we widely used Plug as primarily auth service and for ICP payments.

Our team considers the development of the community very important and we have decided to Opensource the whole project.

Challenges we have ran into

  • The first one was the architecture of canisters - we settled on one canister per user. It stores user and tokens data, and also holds ICP
  • Also we discovered a large number of nuances while implementing purchase and transferring ICP from canister to user and backwards (using proposal)

Accomplishments that we're proud of

Dwitter works on the mainnet! Also it needs to highlight separately the canister architecture. Besides that, one of the most complex and interesting things was the development of tokenomics, where users can buy and sell tokens for ICP.

What we learned

How to make dapp on web3 with all data stored on Dfinity blockchain. Also we figured out how to implement tokenomics with AMM and improved knowledge in Motoko. We learned how to design canisters to be upgradable. It helps to gradually evolve the service on the mainnet without data loss.

What's next for Dwitter

In the future we plan to make an integration with Bitcoin and Ethereum (after Dfinity integrates with). Also we continue to work on adding more social mechanics and think about extra monetization features for celebrities. To sum up:

  • integration with Bitcoin and Ethereum
  • likes, subscriptions and comments
  • monetization features
  • UI/UX improvement
  • page load optimization

Built With

Share this project:

Updates