Skip to content

Commit

Permalink
feat: add task
Browse files Browse the repository at this point in the history
  • Loading branch information
smallfu6 committed Nov 13, 2024
1 parent 5c6e1fc commit 745713e
Show file tree
Hide file tree
Showing 7 changed files with 59 additions and 1 deletion.
14 changes: 13 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
### Mina x OpenBuild zkApp 训练营

**Mina Protocol** 携手 **OpenBuild** 推出为零知识证明开发者设计的 Bootcamp,让开发者可以从零开始学习在 Mina Protocol 构建 ZK 驱动的应用(zkApp)。无论你是否接触过 ZK 技术,只要具备前端基础知识,便能在指导下顺利掌握 zkApp 开发要领,成为区块链领域中最新创新的见证者和实践者!
**Mina Protocol** 携手 **OpenBuild** 推出为零知识证明开发者设计的 Bootcamp,**助力开发者可以从零开始学习在 Mina Protocol 构建 ZK 驱动的应用(zkApp)**。无论你是否接触过 ZK 技术,只要具备前端基础知识,便能在指导下顺利掌握 zkApp 开发要领,成为区块链领域中最新创新的见证者和实践者!

本次训练营采用“Learn to Earn”模式,提供全免费的优质课程和丰富的实战任务,**由 Mina 和 OpenBuild 支持 2000U 的学习激励,帮助更多的 web2 开发者进入 web3,同时从零开始一步步学习掌握 zkApp 的开发。学习结束后可以组队参与 Mina 生态黑客松,赢取 3000U 的黑客松奖励。**

Expand Down Expand Up @@ -50,6 +50,18 @@
2. 《Protokit 实操案例》


### 任务

| 任务 | 名称 | 奖励 |
|-------|-------|-------|
| [task1](./task/task1.md) | 创建Auro wallet账户,完成水龙头领水 | 2u |
| [task2](./task/task2.md) | 设计一个简单的投票统计器 | 5u |
| [task3](./task/task3.md) | 设计一个众筹合约,时间窗口关闭后被投资人方可提款 | 5u |
| [task4](./task/task4.md) | 设计一个众筹合约,众筹资金逐步释放 | 2u |
| [task5](./task/task5.md) | 发行你自己的 token,然后设计一个众筹合约 | 5u |
| [task6](./task/task6.md) | 运行一个 appchain | 3u |


### 学习资源

#### TypeScript 学习资料
Expand Down
10 changes: 10 additions & 0 deletions task/task1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@

### task1:创建 auro wallet账户,完成水龙头领水

1. 概述Mina所采用的证明系统(包括名称、特点)
2. 概述递归零知识证明在Mina共识过程中的应用
3. 下载安装 Auro wallet,创建账户,并完成领水

请提交回答,钱包账户截图和领水 `tx hash`


7 changes: 7 additions & 0 deletions task/task2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@

### task2: 设计一个简单的投票统计器

1. 设计一个简单的投票统计器用于小团队内部投票,要求能累积统计出赞成票和反对票的票数
2. 考虑检查投票者属于团队成员,假设队员不会重复投票

请提交测试执行脚本。
8 changes: 8 additions & 0 deletions task/task3.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@

### task3: 设计一个众筹合约, 时间窗口关闭后被投资人方可提款

1. 运用 `zkapp-cli` 命令行工具初始化工程
2. 使用 `o1js` 设计一个众筹合约,在指定时间窗口间允许任何人投入 MINA,有硬顶
3. 时间窗口关闭后被投资人方可提款

请提交提供 `Jest` 本地测试的交互脚本,以及部署到 `DevNet``tx hash`
8 changes: 8 additions & 0 deletions task/task4.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@

### task4: 设计一个众筹合约,众筹资金逐步释放

1. 运用 `zkapp-cli` 命令行工具初始化工程
2. 使用 `o1js` 设计一个众筹合约,在指定时间窗口间允许任何人投入MINA,有硬顶
3. 时间窗口关闭后众筹资金须按照以下 `vesting` 计划逐步释放: 提款人可以立即提走20%,而后每200个区块释放10%直至释放完毕

请提交 `Jest` 本地测试交互脚本,以及部署到 `DevNet``tx hash`
7 changes: 7 additions & 0 deletions task/task5.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@

### task5:发行你自己的token,然后设计一个众筹合约

1. 发行你自己的 `token`
2. 设计一个众筹合约,在指定时间窗口间允许任何人以固定的价格购买,有硬顶

请提交 `token` 地址,`Jest` 本地测试交互脚本,以及部署到 `DevNet``tx hash`
6 changes: 6 additions & 0 deletions task/task6.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

### task6:运行一个 appchain

1. 参考[文档](https://protokit.dev/docs/quickstart),启动一个 `appchain`

请提交运行结果截图。

0 comments on commit 745713e

Please sign in to comment.