qaci-server
v1.1.9
Published
### Setup
Downloads
5
Readme
Local Development
Setup
Follow instruction to setup environment and dependency, then
docker build -t qaci-node:v0.5 - < LightDockerfile
cd docker
./setup.sh
Development
### Setup
# docker/docker-compose.yml: manually replace ETH_PROVIDER from 127.0.0.1 to docker network ip
# server/docker.sh: manually replace SCRIPT location to local maci repo location
### In one terminal
# for v1.0
cd contracts && npm run hardhat
# for v0.10
cd contracts && npm run ganache
### In second terminal
cd server && ./docker.sh -u
# whenever modified the code, just restart the docker instance to take effect
cd server && ./docker.sh -ud
### In third terminal
# for v1.0
cd server && ./test.sh
# for v0.10
cd server && ./test_v0_10.sh
### turnoff docker after finish
cd server && ./docker.sh -d
Simulate Production Environment
In real production, we will replace the hardhat local testnet by real ethereum compatible network
Setup zkeys
#### setup zkeys if you haven't done it before
cd server && ./docker.sh -u # then Ctrl-C
# login into docker
./docker.sh -l
# now gen_zkey inside docker if you haven't setup zkeys
cd ~/maci/cli && ./gen_zkey.sh
Development
### In one terminal
cd server && ./docker.sh -u
## In second terminal
cd server && ./docker.sh -l
# now in docker
# for v1.0
cd ~/maci/contracts && npm run hardhat
# for v0.10
cd ~/maci_v0_10/contracts && npm run ganache
### In third terminal, admin role
cd server && ./docker.sh -l
# now in docker
cd ~/maci/server
# run any commands for admin, e.g.
# v1.0
./admin.sh deploy
./admin.sh store
# v0.10
./admin_v0_10.sh deploy
./admin_v0_10.sh store
### In fourth terminal, user role
cd server
# run any commands for user, e.g.
# v1.0
./user.sh signup -p $pk -x $maci
# v0.10
./user_v0_10.sh signup -p $pk -x $maci