project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4
project screenshot 5

PetitionVault

With PetitionVault we make petitions safe from malicious activities by both the signers and the creators.

PetitionVault

Created At

ETHGlobal Brussels

Winner of

Arbitrum - Best General Project Built on Arbitrum Technology

Worldcoin - Best Use of World ID 3rd Prize

Project Description

PetitionVault allows users to either sign or create their own petitions. To make sure petitions can be signed by a person only once, we use WorldID to prevent multiple-signing and ensure the signer being an actual human being. When creating a petition, we allow the creator to attach one or more sources. These source documents are stored using Lighthouse storage and the underlying Filecoin network. For storing the petition, we chose the Arbitrum Blockchain. The smart contract containing all necessary data was written using Arbitrum's Stylus technology and the rust programminng language. All data besides the count of votes is initialized at creation, ensuring maximum immutability and temper-proofness.

How it's Made

This project uses Arbitrum Stylus and rust to create the smart contract storing the petition. The corresponding source documents are stored using Filecoin and Lighthouse Storage. Authentification for signing petitions is handled by WorldID. The backend is written in go; for the frontend we used javascript react.

background image mobile

Join the mailing list

Get the latest news and updates