elekton-contracts | elekton.js | elekton-dapp
Elekton cross-platform decentralized application.
Elekton is a set of modules useful to create a simple e-voting system that uses non-interactive zero-knowledge proofs and blockchain technologies to allow users to vote anonymously in a verifiable and transparent way. In addition to this repository there are the Elekton contracts and a JavaScript library (elekton.js) with the functions to interact with them.
- 🛠 Install
- 🕹 Usage
- 🔬 Development
- 🧾 MIT License
- ☎️ Contacts
Clone this repository and install the dependencies:
git clone https://github.com/elekton/elekton-dapp.git
cd elekton-dapp
yarn # or `npm i`
- Create the snark artifacts by running
yarn snark
on the elekton-contracts repository, - copy the
main.wasm
andcircuit_final.zkey
files from the./elekton-contracts/build/snark/
folder to the./elekton-dapp/public
folder, - start the Besu development network with
yarn start
and deploy theElekton.sol
contract withyarn deploy
on the elekton-contracts repository, - copy the address of the deployed contract and put it in the
./elekton-dapp/src/config.ts
configuration file, - start a local IPFS node,
- finally run
yarn start
to start the application on a local server.
Notice: ran yarn --prod
within ./node_modules/elekton
if you have any problem with TextEncoder or TextDecoder!
- e-mail : me@cedoor.dev
- github : @cedoor
- website : https://cedoor.dev