Grassroots

An encrypted climate crime whistle-blower noticeboard providing anonymity, credibility and safety

Built during the 36 hour EthGlobal Istanbul hackathon.

Inspiration

Grassroots facilitates the sharing of information on climate accountability and crimes, fostering dialogue for users to address the impact and potential investigations while enabling communities to raise funds for relief.

Grassroots provides a secure space for whistleblowers to report concealed climate-related risks anonymously, allowing them to connect with their communities and share the personal and communal impact of climate change and crimes. Users can actively participate by voting on and speaking up about whistleblower claims. As the platform evolves, it aims to empower users to raise funding for investigations and relief, taking a solution-oriented approach to mitigate climate risks proactively for early intervention.

Functions

The major function of the dApp is as a annonymous, immutable and censorship resistant noticeboard for the reporting of climate misconduct without fear of repercussions.

Users can:
  • View other's posts
  • Sign in using a range of wallets
  • Verify their humanity via NextID and verifying their socials (annonymously)

  • Once signed in:
  • Upvote & downvote posts
  • Submit their own post with pictures through an IPFS link (pairing with ReFound)


  • Tech-stack

    We utilised Waku because it offered a safe, gasless and censorship resistant way of storing messages and communicating between different participants in the dApp.

  • Next.js
  • Scaffold-ETH2 stack(Typescript/TailwindCSS/wagmi hooks)
  • Waku JS SDK for peer-to-peer messaging and permanent off-chain data storage
  • NextID REST API
  • IPFS for community sourced images and on chain storage


  • System Diagram

    Diagram

    Issues encountered

    Due to the annonymous & open nature of the noticeboard we were building it was clear we had to account for potential nefarious use, bots and sybil attacks.

    We did so by:

  • Requiring wallet connect sign-on to post
  • Requiring NextID social verification to sign-on.
  • Allowing verified users to moderate by upvote / downvote.
  • Negatively voted posts are archived after some time.

  • Additionaly, we had to consider the spread of mis-information.

    For this we utilised Refound for ensuring the veracity of the images. Refound is a webApp for journalism that hashes photo info as it is taken to provide proof of real-capture. Grassroots only accepts Refound IPFS links of images, in order to verify the images aren't sourced online.


    Road-map

    Due to the 36 hour time constraint there are a number of features which we would aim to implement in the future

  • Finalise NextID integration. Issues were encountered and could not be ironed out after searching documentation and speaking to NextID's staff.
  • Create threaded posts by allowing posts to be linked to one another to track an issue
  • Create donation feature for charities effected by related causes