中文 / English
本项目适合有一定语言基础的开发者入门区块链 DAPP 开发,由浅到深了解和开发 DeFi, NFT, DAO, CRYPTO 项目。
项目愿景是给初级开发者一个可执行且最简的区块链 Dapp 学习路线图,给进阶开发者一个可以交流和协作的平台。
本项目跟Rebase大学深度结合,成立学习小组进行任务分工然后一起研究主流dapp项目,每周进行技术分享,输出成果会作为视频上传B站的Rebase账号。
项目秉持 开源大学 的理念,会以DAO治理形式管理此开源项目。项目由来可以阅读Rebase公众号文章《Dapp-Learning 欢迎您的加入》。
此项目仍在开发中,适合各阶段的开发者加入,欢迎提 PR 来创建更多的教程项目或完善已有的教程项目🤗。提交一次PR或者在Rebase大学进行一次分享即可加入我们开发者交流群,贡献三次高质量PR即可成为PR审核者,并参与决议项目走向。项目管理细则请参看新人如何参与以及项目治理规则,欢迎理念相同的小伙伴加入。
技术栈:
web3.js
ethers.js (hardhat)
web3.py (Brownie)
Java
(可选)Rust
(可选)Go
(可选)
项目分为 基础任务 和 项目任务 两部分
- 基础任务
是熟悉和集成区块链开发所必需的基本工具组件(如ERC标准, oracle, graph, ipfs) - 项目任务
是研究主流 DeFi, NFT, DAO, CRYPTO 的经典项目让开发者深入真实项目开发,我们会成立学习小组进行任务分工,一起讨论和研究项目源码。
基础知识预备
- 进入正式的 Dapp 开发学习前, 建议新手开发者学习 以太坊 及 Solidity 相关的基本知识。
可参考 基础知识预备 , 供各位新手小伙伴学习参考。
开发工具
- 工欲善其事, 必先利其器。 请先熟悉基本工具的使用。
可参考 开发工具推荐 查看当下主流的区块链开发工具。
推荐阅读
我们整理了区块链相关的经典书籍,帮助各位开发者深入了解当下区块链背后的人文思潮。
- 《主权个人》(Sovereign Individuals, 尚无中译本,可关注不懂经公众号阅读)
- 推荐了解奥地利学派,Hayek生平介绍
- 系列文章:给区块链爱好者的奥派经济学课
- 《货币未来》:你应该了解的货币史
同时欢迎大家添加推荐书籍,请在此文档 书籍推荐 中录入
加密课程
我们会推荐一些国外顶尖大学和以太坊社区的加密课程,帮助开发者系统性的了解区块链和加密货币。
- MIT Online Course: Blockchain and Money by Prof. Gary Gensler
- Berkeley Online Course: Defi Learning
- Standford Online Course: CS 251 Bitcoin and Cryptocurrencies
其他优质的课程也欢迎提 PR 在此文档加密课程推荐 中录入。
通过以下基础任务,了解开发 Dapp 的基本工具和开发知识。
DAPP架构请参考文章--从架构维度看Web2.0与Web3.0应用之别
学习并本地运行 前20 个task,可以升级关注项目任务。
欢迎提 PR 来创建更多的教程项目或完善已有的教程项目🤗
⬜ 表示任务未开始
⌛ 表示任务正在进行中
✅ 表示任务已完成
- use web3.js deploy contract ✅
- use web3.js create transaction ✅
- use web3.js call ERC20 contract ✅
- use truffle ✅
- use ethers.js call ERC20 contract ✅
- use waffle and ethers.js test contract ✅
- use hardhat ✅
- graph ✅
- react(metamask) ✅
- ERC721+ ERC1155 + ipfs ✅
- react + express + hardhat ✅
- Crowdfund ✅
- decentralized exchange ✅
- chainlink-api ✅
- nft-blindbox-chainlink-vrf ✅
- nft auction & exchange ✅
- wallet develop ✅
- web3.py ✅
- brownie ✅
- flash-loan ✅
- scaffold-Lender ✅
- zk-snarkjs ✅
- ERC865 & ERC875 ✅
- Upgradeable-contract ✅
- multi-sig-wallet ✅
- Quadratic vote ✅
- Arbitrum layer2 ✅
- optimism layer2 ⬜
- Polygon(matic) layer2 ✅
- zksync layer2 ⬜
- duneanalytics & nansen ⬜
- chainlink-keeper ✅
- pooltogether ⌛
- subgraph ⬜
- Liquity ⬜
- NFT Filecoin ✅
- Charm.fi ✅
- Flashbots provider for ethers.js ⬜
- Ethlend ⬜
- snapshot ⬜
- NFT farming ⬜
- merkle-distributor airdrop ✅
- front running ⬜
- JavaScript Cryptography ⬜
- proxy contract ⬜
- NFT Floor Perps ⬜
- TWAMM: Time-Weighted Average Market Maker ⬜
- state channel ⬜
- sniper ⬜
- solidity security ✅
- alchemix ✅
- Governace ⬜
- Freelancer's Smart Contract ⬜
- Cryptovoxels ⬜
- PBFT ⬜
- IDO ⬜
欢迎提交 PR,添加新的基础任务或者更新上面的任务
准备工作:
此部分针对有一定基础开发者,选取主流优质项目进行源码剖析和 code review。
可采用小组协作方式将项目部署至测试网,以此为基础在 Rebase 社区进行分享。大型defi项目新颖且内容庞大,我们建议分工协作方式进行,如一人看白皮书,一人负责前端,一人负责合约,一人负责数据展示。
开发者可以在开发群里发起项目研究倡议,建立小组,进行协作。
建议先阅读DEFI经典书籍:
How to DeFi
How to DeFi:Advanced
- UniswapV2 ✅
- UniswapV3 ✅
- Compound 👉 认领这个 Task
- Aave
- SNX 👉 认领这个 Task
- Curve 👉 认领这个 Task
- 0x-protocol 👉 认领这个 Task
- Bancor 👉 认领这个 Task
- YFI 👉 认领这个 Task
- AMPL 👉 认领这个 Task
- Perpetual Protocol 👉 认领这个 Task
- DYDX👉 认领这个 Task
- OPYN
- INDEX👉 认领这个 Task
- DODO 👉 认领这个 Task
- MakerDao👉 Claim this task
-
- Loot NFT Distribute
请先阅读书籍:
《图解密码技术》
项目列表:
- 01.ECC
- 02.PLONK
- 03.tornado
- 04.zk_snark 👉 认领这个 Task
- 常用安全工具
- CTF 训练营
- 安全开发实践
新人如何参与到我们项目,请参考链接 如何参与
Dapp-Learning 有系列衍生项目及共同维护项目, 参考 相关项目 详细了解 Dapp-Learning 项目生态.
测试币申请,安装和使用问题,请参考链接 常见问题
欢迎感兴趣的小伙伴参与共建,开源项目维护不易,我们欢迎捐助。
gitcoin grant地址: Dapp-Learning gitcoin grant
捐助地址:
-
以太坊主网/zkSync/Arbitrum: 0x1F7b953113f4dFcBF56a1688529CC812865840e1
-
Polygon多签钱包: 0x2A6D09B3b11E5455a37F907f2ec885E0Be704779
polygon网络上我们已生成多签钱包,由核心贡献者管理
我们会议DAO形式治理项目,定期按 PR 提交记录分配资金给开发者,同时项目会给PR贡献者发放nft作为纪念奖品。