中文 / English
序 - Preface
本项目适合有一定语言基础的开发者入门区块链 DAPP 开发,由浅到深了解和开发 DeFi, NFT, DAO, CRYPTO 项目。
项目愿景是给初级开发者一个可执行且最简的区块链 Dapp 学习路线图,给进阶开发者一个可以交流和协作的平台。
本项目会成立学习小组进行任务分工,然后一起研究主流dapp项目,每周进行技术分享,输出成果会作为视频上传Youtube和 Bilibili 。
项目秉持 开源大学 的理念,会以DAO治理形式管理此开源项目。本项目受以太坊基金会赞助,我们会将资金奖励给项目的优秀贡献者。开源项目维护不易,欢迎gitcoin捐赠。想跟踪项目最新进展,欢迎关注我们的推特和Youtube。 项目由来可以阅读《Dapp-Learning 欢迎您的加入》。
此项目仍在开发中,适合各阶段的开发者加入,欢迎提 PR 来创建更多的教程项目或完善已有的教程项目
Official links:
- Github
- discord
- Youtube
- Wechat Official Account: Dapp Learning
- Bilibili
- notion
- Sharing Meeting
- Gitcoin
- Project Fund Management
- linktr
技术栈:
web3.js
ethers.js (hardhat)
web3.py (Brownie)
Java
(可选)Rust
(可选)Go
(可选)
项目结构
项目分为 基础任务 和 项目任务 两部分
- 基础任务 是熟悉和集成区块链开发所必需的基本工具组件(如ERC标准, oracle, graph, ipfs)
- 项目任务 是研究主流 DeFi, NFT, DAO, CRYPTO 的经典项目让开发者深入真实项目开发,我们会成立学习小组进行任务分工,一起讨论和研究项目源码。
准备工作 - Preparatory Work
基础知识预备
- 进入正式的 Dapp 开发学习前, 建议新手开发者学习 以太坊 及 Solidity 相关的基本知识。 更多资料可参考 基础知识预备 , 供各位新手小伙伴学习参考。
- 开发者进入web3技能描述大全 https://www.devpill.me/
开发工具
- 工欲善其事, 必先利其器。 请先熟悉基本工具的使用。 可参考 开发工具推荐 查看当下主流的区块链开发工具。
推荐阅读
我们整理了区块链相关的经典书籍,帮助各位开发者深入了解当下区块链背后的人文思潮。
- 《主权个人》(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 在此文档加密课程推荐 中录入。 我们也成立翻译小组翻译这些公开课程,总结课程笔记,节省小伙伴时间。中文笔记请查看:MIT课程笔记整理 对翻译小组感兴趣小伙伴欢迎加入,请关注我们公众号 Dapp-Learning 联系我们。
基础任务 - Basic Tasks
通过以下基础任务,了解开发 Dapp 的基本工具和开发知识。
DAPP架构请参考文章--从架构维度看Web2.0与Web3.0应用之别
学习并本地运行 前20 个task,可以升级关注项目任务。
欢迎提 PR 来创建更多的教程项目或完善已有的教程项目
- deploy contract with web3.js
✅ - create transaction with web3.js
✅ - call ERC20 contract with web3.js
✅ - truffle
✅ - call ERC20 contract with ethers.js
✅ - test contract with waffle and ethers.js
✅ - hardhat
✅ - graph
✅ - react(metamask)
✅ - ERC721+ ERC1155 + ipfs
✅ - react + express + hardhat
✅ - Crowdfund
✅ - decentralized exchange
✅ - chainlink-api
✅ - nft-blindbox-chainlink-vrf
✅ - nft auction & exchange
✅ - wallet development
✅ - web3.py
✅ - brownie
✅ - flash-loan
✅ - aave-uni-lender
✅ - zk-snarkjs
✅ - ERC865 & ERC875
✅ - Upgradeable-contract
✅ - multi-sig-wallet
✅ - Quadratic vote & Gitcoin
✅ - Arbitrum layer2
✅ - Optimism layer2
✅ - Polygon(matic) layer2
✅ - zksync layer2
✅ - duneanalytics & nansen
⬜ - chainlink-keeper
✅ - pooltogether
⌛ - subgraph
⬜ - StarkNet
⌛ - NFT FileCoin
✅ - Charm.fi
✅ - Flashbots provider with ethers.js
⬜ - Multicall
✅ - snapshot
⌛ - NFT farming
⬜ - merkle-distributor airdrop
✅ - front running
⬜ - JavaScript Cryptography
✅ - LP Dividend
⬜ - NFT Floor Perps
⬜ - TWAMM: Time-Weighted Average Market Maker
⬜ - state channel
⬜ - sniper
⬜ - solidity security
✅ - NYM
⬜ - Governace
⬜ - Freelancer's Smart Contract
✅ - Cryptovoxels
⬜ - PBFT
⬜ - IDO
⬜ - Orbit model
⬜ - Ethereum Virtual Machine Opcodes
⌛ - web3.0 dapp
⌛ - Referral Code
⬜ - ENS
✅ - Tenderly
- HTLC-crosschain
✅ - Web3-Rust
⬜ - ZK-NFT
- Kleros
- Go-Ethereum Code Analysis
- Config discord with Collab.land
✅ - Decentralized OTC
- Arweave file upload with Bundlr Client
- Foundry
- Unlock protocol
- onchainNFT
- erc20-meta-token
项目任务
准备工作: 此部分针对有一定基础开发者,选取主流优质项目进行源码剖析和 code review。 可采用小组协作方式将项目部署至测试网,以此为基础在 Rebase 社区进行分享。大型defi项目新颖且内容庞大,我们建议分工协作方式进行,如一人看白皮书,一人负责前端,一人负责合约,一人负责数据展示。 开发者可以在开发群里发起项目研究倡议,建立小组,进行协作。
DeFi 进阶
建议先阅读DEFI经典书籍:
DEFI学习路线图:
交易 -> 借贷 ->衍生品
可以参考我们学习小组的学习路线图,配合视频学习更佳:
- 交易: uniV1(task13) -> uniV2 -> uniV3 -> CurveV1 -> CurveV2
- 借贷: Aave -> Compound -> Liquity -> Euler
- 衍生品: SNX -> YFI -> Perpetual
- UniswapV2
✅ - UniswapV3
✅ - Curve
⌛ - Compound
✅ - Aave
✅ - Liquity
⌛ - Euler
⌛ - SNX
👉 认领这个 Task - YFI
👉 认领这个 Task - Perpetual Protocol
👉 认领这个 Task - Sushi
👉 Claim this task - OPYN
⌛ - Alchemix
✅ - AMPL
👉 认领这个 Task - RAI
- DYDX
👉 认领这个 Task - INDEX
👉 认领这个 Task - DODO Trading API
👉 认领这个 Task - MakerDao
👉 Claim this task - 0x-protocol
👉 认领这个 Task - Bancor
👉 认领这个 Task - Set
- Dhedge
- Element
NFT 进阶
DAO 进阶
Crypto 进阶
请先阅读书籍: 《图解密码技术》 项目列表:
智能合约安全
- 常用安全工具
- CTF 训练营
- 安全开发实践
- 学习资源合集
Cryptocurrency Jobs Websites
推荐一些比较好cryptocurrency jobs网站
Hackathons
参与黑客松增加实践经验,可参与有:
如何参与以及DAO治理
新人如何参与到我们项目,请参考链接 如何参与
项目生态
Dapp-Learning 有系列衍生项目及共同维护项目, 参考 相关项目 详细了解 Dapp-Learning 项目生态.
常见问题
测试币申请,安装和使用问题,请参考链接 常见问题
社区捐助
欢迎感兴趣的小伙伴参与共建,开源项目维护不易,我们欢迎捐助。 gitcoin grant地址: Dapp-Learning gitcoin grant
捐助地址:
- 以太坊主网/zkSync/Arbitrum: 0x1F7b953113f4dFcBF56a1688529CC812865840e1
- Polygon多签钱包: 0x2A6D09B3b11E5455a37F907f2ec885E0Be704779
polygon网络上我们已生成多签钱包,由核心贡献者管理
我们会议DAO形式治理项目,定期按 PR 提交记录分配资金给开发者,同时项目会给PR贡献者发放nft作为纪念奖品。
以太坊基金会赞助项目
本项目受以太坊基金会赞助, 赞助资金会存放在多签钱包,由核心贡献者共同管理,并奖励给项目的优秀贡献者,欢迎加入我们。
合作伙伴
赞助伙伴
感谢以下组织对本开源项目的无偿捐助。