Please refer to the implementation spec for technical details, and the original ethresear.ch post for a high-level view.
We welcome contributions to this project. Please join our Telegram group to discuss.
MACI is tested with node v10.16.3
# Install dependencies
yarn install
# Generate the circuits
yarn circuit:compile
yarn circuit:setup
yarn circuit:generateverifier
# Run Ganache (in another terminal)
yarn ganache
# Running tests
# NOTE: You'll need to have services running (eg ganache)
# You can setup the services with `docker-compose up`
# in another terminal
yarn test
-
ENV_TYPE
: 'PROD' | 'DEV' | 'TEST' -
MACI_CONTRACT_ADDRESS
: Address of deployed MACI contract -
CMD_TREE_ADDRESS
: Address of deployed merkle tree contract -
SIGN_UP_TOKEN_ADDRESS
: Address of deployed ERC721 token contract -
DB_USER
: Postgres DB username -
DB_PASSWORD
: Postgres DB password -
DB_HOST
: Postgres host -
DB_PORT
: Postgres port -
DB_NAME
: Postgres database name -
REDIS_HOST
: Redis host -
REDIS_PORT
: Redis port -
REDIS_PASSWORD
: Redis password
-
MERKLE_TREE_DEPTH
: Depth of the merkle tree (Defaults to 4) -
SIGN_UP_BLOCK_DURATION
: Number of blocks allocated for the sign up process (default: 20) -
COORDINATOR_PRIVATE_KEY
: Private key of the Coordinator
We are actively seeking help on implementing this project please join https://t.me/joinchat/LUgOpE7J2gstRcZqdERyvw and ask about contributions
And check the help wanted issues.