DRate

DRate

Decentralised Event Reputation System

The problem DRate solves

Reviews/Reputations are an important source of information for users as it can play an important role and help them in making decisions. Existing reputation systems are centralised in nature and can hence be unreliable and untrustworthy with the reputation that they show. This is because the votes are held at a centralised server and can be manipulated if required. To solve this we present - DRate - a decentralised reputation system which users can use to upload movies(events) and allow users to review and rate them.

The voting system employed by the platform is inspired by Vitalik Buterin's smart voting proposal. The voting system factors in both the users vote and their preference. When a user sign's up to the platform they are assigned 100 tokens internally. When a user cast's their vote they pay a quadratically increasing number of tokens towards their vote. This means that - to cast y votes, the user spends y*y tokens. This prevents users from manipulating the rating as they are now limited in their capability in casting wrong votes.

The user gains tokens in 2 ways:

  1. By adding a movie(event) on to the platform - 50 token are provided
  2. [ FUTURE SCOPE ] By providing good reviews. In order to accomodate the current scenario of users we have made use of a simple algorithm - after a given time from adding the event to the platform the current rating of the system is noted. We then take the difference between the ratings, square the resulting value and multiply by 100. We then return the tokens provided by the user after reducing the percentage computed previously.
    For example : If current rating is 5.0 and user rating was 5.4 then the user would now lose 16% of funds which they had submitted while voting.[(5.0-5.4)^2*100 = 16%]. So if the user had submitted 100 tokens they would now only get 84 tokens back.

At this stage of the platform we do not see the requirement of tokens but would be considering it strongly in future extensions of this platform.

Challenges we ran into

Arcana does not support Mantle. Integrating polygon ID required a thorough understanding of its different subparts such that we are able to integrate it with our platform as we require it.

Note:
We had made some progress in our application before the start of the hackathon itself. The progress includes:

  1. Basic UI
  2. Uploading picture assets to IPFS with the help of NFTPort - The second piece of code has been used from the ETHIndia Project of https://github.com/jaggu21/ghar-on-chain. Note that only the NFTPort calls have been used which essentially remains the same in the case of any project.

Things that we built during the hackathon:

  1. Integration of Livepeer
  2. Integration of Arcana
  3. Integration of Polygon ID
  4. Integration of Mantle
  5. Integration of PUSH
  6. Built out the complete UI
  7. Updated the contract to support Quadratic Voting

Tracks Applied (8)

Polygon: Build a sybil resistant airdrop tool using Polygon ID

We have used Polygon ID in order to verify the age of the users. This helps us ensure that only users above the age of 2...Read More

Polygon Technology

Polygon: Open Track

We have used Polygon ID in order to verify the age of the users. This helps us ensure that only users above the age of 2...Read More

Polygon Technology

Arcana

We have made use of Arcana in order to provide password-less sign-in and social auth for the user to access the platform...Read More

Arcana Network

Livepeer

We have made use of Livepeer SDK in order to store video assets onto IPFS and seamlessly stream videos on the platform.

Livepeer

Push Protocol

We have made use of Push in order to send and retrieve notifications they have added a new event(movie) to the platform....Read More

Push Protocol

Mantle

We have deployed our smart contract on the mantle testnet. Mantle's high performance network helped deploy our smart con...Read More

Mantle

Mantle: UX Track

We have deployed and integrated many systems in our application to ensure a smooth user experience: 1) We have used soc...Read More

Mantle

Mantle: Public Goods Track

We have built a reputation system that helps the public make decisions about information. In the regular centralized wor...Read More

Mantle

Discussion