Web3 assets like NFTs,CryptoCurrencies, Dapps are being used heavily due to its decentralised nature. But the information about them isn't collected,stored and mainted in the same way. It is usually a third party Audit company that prepares complex audits for the general crowd. The best we got so far are discuss channels on block explorers. But it isn't really effective for the general.
- People who are looking to simply gain insights(technical+people's opinion) about an asset
- People who want to engage with the community discussions
- Serious people who pay to get detailed reports of an asset
- Smart people who can provide value with their analysis
The Collective Truth offers target audience the collective truth which is credible and reliable as its enriched by the community. There is no single entity gaining profit or manipulating the information to make a quick buck. The information itself is validated and stored in a decentralised manner like the web3 asset itself.
Keeping the above solution in mind, the project achieves it with following features included in the USP release:
- community discussions
- Ratings, scoring
- SMEs audit reports, detailed analysis.
23 November 2021
Metamask: 0xCe58416Ee53Adf3722E8a9AB413265fC356F784f
- Harish R
- DM me on Twitter
The Collective Truth is envisioned to be a fully autonomous, robust, community driven project leaving the creator(me) behind. This is why all the initally minted tokens are held by the smart contract and the creator(me). The creator is just another user and there is no spooky transfer tokens in built to withdraw all the funds from the contract at a later time. Rewards are the only way to gain access to some tokens.
If it wasn't completely non-profit and decentralised, then it would defeat the point of having such a system. And that is why the project was submitted to Community & NFTs tracks.
To help add more features to project, there is a wild idea to reward github users who make valid PRs. But that is way ahead in the future...
- client
- server
- contract
To be able to run the project, you need to install the following dependencies first:
- NodeJS, NPM, YARN
- Python3, Brownie
You would also need:
- A Test Metamask Account's private key
- Alchemy Project ID
- POLYGONSCAN API KEY
- The Client is built with ReactJS and deployed to Firebase.
- A basic Express server deployed to Heroku
- All the smart contracts are writted in Solidity and deployed to Polygon Mumbai Testnet.
One can deploy the smart contracts to any chain, just make sure you have the chain's currency on your wallet. For example, Polygon => Polygon Mumbai Testnet.
For easy upgrades to the functionality layer of the contracts. The The Collective Truth
Smart contract is separated out from the Community Audits
main contract. This was done to prevent restting token and asset data everytime an update is pushed. This is only a temporary fix.
- Clone the repo from GitHub.
- Install all the dependencies on the client directory:
cd /client
yarn install
- Start the React Server
yarn start
- [Optional] To deploy it to firebase.
npm -g firebase-tools
firebase init
firebase deploy
- Make changes to the smart contract and compile it with
brownie compile
- If you wish to deploy to Polygon Mumbai Testnet via Alchemy, you need to add the network first by
brownie networks add Polygon polygon-mumbai name="Polygon Mumbai (Alchemy)" host='$WEB3_ALCHEMY_PROJECT_URL' chainid=80001 explorer=https://api-testnet.polygonscan.com/api
Make sure you have your
.env
populated with appropriate keys
- Deploy the contract to the chain
brownie run scripts/deploy.py --network polygon-mumbai
- Install dependencies with
yarn install
. - Place the COINMARKETCAP API KEY in the
.env
- Run
node index.js