or
or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up
Syntax | Example | Reference | |
---|---|---|---|
# Header | Header | 基本排版 | |
- Unordered List |
|
||
1. Ordered List |
|
||
- [ ] Todo List |
|
||
> Blockquote | Blockquote |
||
**Bold font** | Bold font | ||
*Italics font* | Italics font | ||
~~Strikethrough~~ | |||
19^th^ | 19th | ||
H~2~O | H2O | ||
++Inserted text++ | Inserted text | ||
==Marked text== | Marked text | ||
[link text](https:// "title") | Link | ||
 | Image | ||
`Code` | Code |
在筆記中貼入程式碼 | |
```javascript var i = 0; ``` |
|
||
:smile: | ![]() |
Emoji list | |
{%youtube youtube_id %} | Externals | ||
$L^aT_eX$ | LaTeX | ||
:::info This is a alert area. ::: |
This is a alert area. |
On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?
Please give us some advice and help us improve HackMD.
Do you want to remove this version name and description?
Syncing
xxxxxxxxxx
Coordinator Service for MACI
I have finished the feature for MACI coordinator service. Two PR have been merged: v1.0 and v0.10.
Overal structure
There are two roles in the cordinator service: admin (i.e. maci coordinator) and user (i.e. normal user). The responsibility for admin is to maintain the code updated and the backend services for normal users. The user just need sends http request to the backend server to interact with the MACI service such as signup and publish messages.
The coordinator service has been wrapped into two docker instances: one for the backend server to accept user request; one for mongodb service to store all necessary informations of the current state such as smart contract addresses, zero knowledge proof keys etc.
There are two modes: development mode and production mode. For developers and cordinator, it's convenient for them to be able to quickly change the code and test the results. Hence the backend docker instance mounts the code repo to the developer's local repo. For production mode, all the code repos will be included into the docker instance instead of mount to local repo.
Project Setup
The project can be setup in two different ways. One for developing purpose, which the codes are linked to the developers' local machine, so it is easy to modify the codes and test the results. The other is for production purpose, where the codes are stored in docker image, so there will be no code changes when starting the docker services.
development environment
setup
development and test
production environment
setup
test
tags:
public