Web3项目创意初学者的一站式商店
在计算科学和技术的世界里,网络已经成为一个深入研究和创新的领域。从科技公司到金融服务机构都对区块链、加密货币和去中心化的互联网运动表现出兴趣。同样地,许多像你一样的开发者也看到了使用这些web3技术的新闻、趋势和项目。
你是否对学习区块链、加密货币和去中心化的应用程序(DApps)感兴趣?你是否一直想知道web3的副业或有趣的项目会是什么样子?那么,本指南可以帮助你 “启动 “这个旅程,并作为对这个新的和快速发展的空间的介绍。
对于那些希望在web3行业找到工作的人来说,以下web3项目的创意可以作为一个良好的起点。但首先,让我们看一下一些基本知识。
在本指南中,你将了解:
- 开始使用
- 需要熟悉的工具和框架
- 常见的web3用例
- 所有12个项目想法的总结
- 入门级项目
-
- “Hello, world!”
-
- 简单的存储智能合约
-
- 触摸奶酪
-
- 事件押注
-
- 一个包含ERC20代币的以太钱包
-
- 初学者的中级项目
-
- Web3的待办事项列表
-
- 一个任务驱动的DAO
-
- 一个发送1小时 “工资 “代币的智能合约
-
- 投票或表决系统
-
- 受共价物启发的项目想法
-
- NFT收集仪表板
-
- XY=K DEX仪表板
-
- 使用Covalent的API为智能合约定制数据源
-
- 你的web3之旅才刚刚开始
开始使用
需要熟悉的工具和框架
这些是你可能想要熟悉的一些基本的和 “不错的 “工具和编程语言,以便更好地计划如何构建这些项目。快速浏览这些工具的介绍页面或教程,以了解它们的主要功能是什么。
基本要素
- 基础HTML、CSS和JavaScript(Web2的大型前端语言)
- Solidity(一种用于构建智能合约的编程语言)
- Web3.js和Ethers.js(使前端应用程序与以太坊区块链互动的JavaScript库)
- Remix(一个web3集成开发环境/IDE)。
鼓励了解一下
- Truffle和Hardhat (web3框架)
- OpenZeppelin(一个智能合约库,为web3工程师创建工具)
- 对以太坊虚拟机(EVM)有一个基本的了解,它是如何编译代码的,以及它与你所知道的虚拟机如VMWare或Java虚拟机(JVM)有什么不同?
常见的web3用例
此外,学习不同的web3用例可以帮助你更好地了解web3的世界是什么样的。这些用例包括。
- 去中心化的自治组织(DAO):没有中心化领导的成员拥有的社区
- 不可伪造的代币(NFTs):存在于区块链上的独特的数字和加密安全的代币
- 去中心化金融(DeFi):一类新兴的金融技术,在金融交易中去除银行和机构等第三方。
- 隐私和数字基础设施:密码学的创新面,完全透明,并改善用户的个人数据
- 区块链游戏:包括使用基于密码学的区块链技术元素的视频游戏。从玩就可以赚(P2E)的游戏就是很好的例子。
- Metaverse:结合了社交媒体、在线游戏、增强现实(AR)、虚拟现实(VR)和加密货币等方面的数字现实,允许用户进行虚拟互动。
- 创造者经济:新兴的开发者、艺术家、音乐家、追随者和支持者的创造者社区。
所有12个项目想法的总结
项目 | 项目 | 难度 | 结果 |
---|---|---|---|
1. | “Hello, world!” | 初学者 | 一个可以打印出 “Hello, world!“的入门智能合约。 |
2. | 简单的存储智能合约 | 初学者 | 一个可以读取、写入、增量和减量变量值的智能合约 |
3. | 奶酪触摸 | 初学者 | 一个不可伪造的代币(NFT)DApp,玩家可以在其中传递一个活的 “奶酪触摸 “代币。 |
4. | 事件押注 | 初学者 | 一个智能合约,允许已确认的参与者分享池中的奖励 |
5. | 一个包含ERC20代币的以太钱包 | 初学者 | 一个以太钱包和ERC20代币的个性化定制,从零开始做起 |
6. | Web3待办事项列表 | 中级 | 一个待办事项清单DApp,每个项目和任务都是区块链上的一个区块。 |
7. | 一个任务驱动的DAO | 中级 | 一个围绕你最喜欢的事业的小型去中心化自治组织(DAO)。 |
8. | 一个可以发送1小时 “工资 “代币的多发送智能合约 | 中级 | 一个向多个以太坊地址发送代表员工时间的代币的智能合约 |
9. | 投票或表决系统 | 中级 | 一个用于投票、表决、注册和安全的去中心化的综合网络应用。 |
10. | 使用Covalent的现成模板的NFT收集仪表板 | 初学者 | 一个显示你最喜欢的收藏品的NFT分析仪表板 |
11. | 使用Covalent的现成模板的XY=K DEX仪表板 | 初学者 | 一个显示你的去中心化交易所组合的去中心化交易所(DEX)分析仪表板 |
12. | 使用Covalent的API为智能合约定制数据源 | 中级 | 使用Chainlink和Covalent的自定义数据源oracle |
入门级项目
通过这些项目开始你构建web3 DApps和代币的旅程,并学习不同的web3编程工具和框架。
1. “Hello, world!”
动机
如果你曾经参加过介绍计算科学和编程概念的初级课程,你可能记得用Python、C++或其他适合初学者的编程语言编写的 “Hello, world!“程序。与这个你学过的第一个代码片段类似,本教学指南以 “Hello, world!“智能合约为开端。
项目描述
编写一个简单的智能合约(用Solidity编写的一段代码),打印出 “Hello, world!” 这个项目是开始你的web3之旅的一个好方法,因为你将学习如何用Solidity编程,这是web3智能合约开发者使用的主流语言。
即使想法很简单,写这个可以教你创建区块链项目的基础知识(提示:代码并不像打印出 “Hello, world!“的主函数那么简单)。它可以教你Solidity文件的布局,如何声明合约和函数,以及该语言的其他基本特征。
从这里开始
看一下Ethereum关于创建 “Hello, world “智能合约的综合教程。
Hello World智能合约初学者 - Fullstack | ethereum.org
您将学习的技能
- 在Solidity中编写智能合约的基础知识
- 编写web3程序或Solidity文件的基本编程特征,如布局、变量、合约和函数。
额外资源
您可以看一下这些额外的资源来跟上。
2. 简单的存储智能合约
动机
现在你已经完成了你的 “Hello, world!“智能合约,那么再创建一个专注于你能用其内容做什么的智能合约如何?
项目描述
创建一个智能合约,它可以接受任何简单的变量(如整数、字符或布尔值),并可以同时读取和写入其值。除了建立这个简单的存储,定义两个可以增加和减少其值的函数。
这个项目挑战你构建通常只读的智能合约,以拥有修改变量值的能力。学习如何构建这个功能可以让你在未来的web3项目中更新和控制更复杂的值,如一个任务、一个人的名字或一个交易的当前时间。
从这里开始
看看TovarishFin的Coinmonks关于创建智能合约存储的文章。
改进意见
通过增加更多的功能和使其更加实用来扩展这个项目的功能。例如,你可以定制你的存储空间,以容纳不同面额的钱或名人的名字和年龄
你将学到的技能
- 智能合约的基本内容和软件架构
- 部署智能合约
- OpenZeppelin,Solidity,以及用它们创建简单的函数
- 创建一个前端用户界面(如果需要)。
额外资源
看看这些额外的资源,了解建立这个项目的其他方法。
3. 触摸奶酪
动机
你有没有想过在通常的 “命令提示游戏 “之外创造一个简单的编程游戏,比如井字游戏、连线4或囚徒困境?试着建造这个迷你的WEB3游戏,它不仅建造起来很有趣,而且也是你可以和你的朋友竞争的有趣的东西。
项目描述
“触摸奶酪 “的灵感来自于2010年《小屁孩日记》中的一个流行场景。为了使它成为一个web3游戏,为一个没有人愿意拥有的代币创建一个不可伪造的代币DApp,并称其为 “奶酪触摸 “代币。
要玩奶酪触摸游戏,在任何时候都只允许1个代币是 “活的”。如果没有代币是活的,任何人都可以在任何时候创建一个。然后,玩家可以将这个活的代币转让给其他任何人。一旦这个令牌的有效期达到24小时,这个令牌就会 “死亡”,仍然持有它的玩家就不能再将它转让给其他人。
建立这个项目可以让你专注于创建和定制你自己的令牌,并记录时间。
从这里开始
要建立你的项目,请使用基本的web3编程语言和框架。例如,BeratOz01使用Solidity、Truffle、Ganache和React.js来构建他的游戏版本。
改进意见
为了使这个游戏更具竞争性(但更难建立),为什么不在前端添加一些游戏分数来记录谁持有的 “奶酪触摸 “代币数量最多?也许你还可以加入一些赌注,玩家在游戏开始时支付一小笔钱,谁没有 “摸到奶酪 “就分享奖励。
你将学习的技能
- 创建和定制一个代币
- 追踪时间
- Solidity
- Truffle
- 基本的游戏编程
4. 事件押注
动机
想让你的聚会和活动更加有趣和具有挑战性吗?这个项目可以帮助你确保你的参会者一定会参加这些活动
项目描述
编写一个智能合约,让人们向一个池子支付一小笔钱,对一个活动进行RSVP,只有参加活动的人才能分享池子里的奖励。如果有人要求参加你的活动,但没有来,他们就会失去他们所投的加密货币。
这个项目向你介绍了赌注的概念,这是web3和去中心化金融的一个著名概念。赌注是一种通过持有某些加密货币赚取奖励的方式,所以这个项目让你对这个过程有一个小小的了解。
从这里开始
查看这个GitHub项目,作为你可以做的一个例子。
你将学习的技能
- 创建一个加密货币池(例如ETH),并在经过批准的用户中分配这些货币
- 追踪与会者和时间
5. 一个包含ERC20代币的以太钱包
动机
现在你已经在创建智能合约方面建立了一些有趣的项目和 “发现项目”,让我们深入了解加密货币的基本块:代币和钱包。
在你学习web3至今的过程中,你有没有想过web3代币和钱包是如何结构的?它们与你购买物品的实体币和你一直拥有的时尚钱包有什么不同?
项目描述
这个项目包括两个主要步骤。
- 从头开始创建一个ERC20代币,和
- 创建一个钱包(智能合约),允许你花费这些代币。
从这里开始
建立你的代币可以让你了解创建它的标准和结构是什么,你如何将代币从一个地址转移到另一个地址,以及如何让它上市。使用Solidity或OpenZeppelin创建它,并使用以下教学指南来帮助您开始。
一旦你创建并上市了你的代币,你就可以创建你的定制ETH钱包了。建立这个项目将教你如何在智能合约中更新你的Ethers以及如何控制对该钱包的访问。
你可以使用MetaMask来创建一个标准的钱包,并使用已有的功能。然而,如果你想学习钱包的结构,以及它如何与以太坊区块链进行通信,你可以从头开始建立。
请看下面的资源,以获得一些指导。
一个简短的警告:如果你想用你定制的代币和钱包在实际的web3市场和交易系统中购买、出售和交易,请先让它们得到审查和上市。这个紧张的过程通常需要很长的时间,所以确保你在如何建立和维护一套强大的钱包和代币方面受过良好的教育。
你将学习的技能
- 使用不同的框架来创建以太币和钱包(如 Solidity 和 Moralis)。
- 构建这些代币和钱包的软件架构
- 为这些项目列出并引入安全功能
额外的资源
如果你需要不同版本的创建钱包和代币,你可以阅读这些文章。
初学者的中级项目
现在对web3编程基础知识和使用不同的web3编程工具和框架有了一定的了解,下一组中级项目可以挑战你建立更全面的项目或为初级项目添加更复杂的功能。
这些是你将从构建这些项目中获得的一些技能和能力。
- 构建全面而详细的DApps
- 规划DApp的软件架构和主要功能及系统(如一个小型的去中心化自治组织或一个投票系统)
- 选择你的web3堆栈以及你想用什么工具和语言来构建你的DApps
- 网络架构和前端应用程序与区块链之间的互动
- 全堆栈网络开发和UX/UI设计
6. Web3的待办事项列表
动机
在学校或工作之外,你可以做的最常见的副业编程项目之一是建立一个待办事项清单,作为一个移动应用程序或一个Web应用程序。如果你一直打算做一个这样的应用程序,为什么不通过与区块链技术整合来进一步挑战自己呢?
事实上,如果清单永远活在区块链上,你可能会有额外的动力来完成你的任务!
项目描述和改进意见
创建一个待办事项列表,其中添加一个新的项目或任务意味着将其包装并添加到区块链上。规划你的应用程序的网络架构,使逻辑写在以太坊智能合约中,前端与区块链互动,而不是通常的网络后端和数据库。扩展你的智能合约,使其能够添加新的任务,修改它们,删除它们,标记它们的完成,为它们设定最后期限,并做其他与创建待办事项清单有关的动作。
虽然你的应用程序可能不会像Todoist或Evernote那样完整和全面,但完成这个中级别的DApp让你深入了解如何建立一个web3应用程序,并给你一个项目,你可以自豪地在下一次求职时向技术雇主展示。
从这里开始
看看这个来自GeeksforGeeks的教程,如何建立你的去中心化的待办事项网络应用。
建立一个由区块链驱动的待办事项网络应用 - GeeksforGeeks
你将学习的技能
- 在web3中构建一个成熟而详细的项目
- 规划DApp的软件架构,以及客户端和区块链之间如何相互作用
- 创建一个前端的用户界面
其他资源
如果你想获得更多的灵感,请看看这些其他的待办事项清单。
7. 一个任务驱动的DAO
动机
区块链和去中心化的兴起带来的一个众所周知的用例是,组织从拥有中心化的执行委员会转向更加分散、平易近人和透明的治理的做法。
去中心化自治组织(DAO)已经被许多知名的web3公司实施,如Uniswap和Aave。在DAO中,用户可以作为智能合约建立规则,接受资金,创建提案,成为代表社区的选民,并通过代币投票。
这个项目让你一窥创建DAO的情况,特别是为社区或社会提供商品或服务的DAO。
项目描述
围绕你喜欢的事业发起一个DAO,比如为有需要的人提供食物,保护环境,或者支持心理健康。建立这个项目是学习如何建立一个成熟的web3项目以及它所需要的不同功能和系统的好方法。
从这里开始
按照这些分步指南,帮助你使用Aragon、Snapshot和Moralis等DAO制造商启动你自己的DAO。你甚至可以使用MolochDAO、DAOstack和web3.js编码你自己的DAO,以学习创建DAO的结构和软件设计。
如何在10分钟内创建一个DAO " Moralis " 最终的web3开发平台
一个有用的提示:决定你想在多大程度上创建、实施和维护你的DAO。创建DAO只是为了了解它们,与实际启动DAO、其社区、其治理和其投票系统相关的风险是不同的。确保你在如何领导和运行DAO方面受过良好的教育。
你将学习的技能
- 创建DAO、以太坊名称服务(ENS)域和投票系统
- 决定创建DAO的社会和基于社区的方面
其他资源
要了解更多关于DAO的信息,请查看这些文章。
8. 一个可以发送1小时 “工资 “代币的智能合约
动机
你想建立你自己的web3去中心化的工资系统吗?使用这个项目,在你上面创建的DAO中支付你的员工,并领略一下这个系统的机制与公司支付员工的传统方式有何不同。
项目描述
同样,这个项目包括两个主要步骤。
- 创建一个1小时的 “工资 “代币(或 “将你的时间代币化”)。
- 创建一个多发送智能合约,将这些代币发送至多个以太坊地址
这个项目挑战你为普通代币(时间附加到你的代币上)和智能合约(将代币发送到多个地址的能力)建立高级和更具体的功能。
从这里开始
首先,推出一个可以代表一个员工一小时时间的代币。使用OpenZeppelin的代币例子合同、Solidity、Cryptoraves和Uniswap。看看Joseph Schiarizzi的这篇文章,从中获得灵感。
第二,创建一个智能合约,将这些代币发送到多个以太坊地址(由你的员工拥有)。作为建议的工具,你可以使用Solidity和Ethereum。看看这个GitHub repo就可以开始了。
您将学习的技能
- 使用不同的框架来创建你的智能合约和代币(Solidity、Ethereum、OpenZeppelin、Cryptoraves和Uniswap)。
- 构建多发送智能合约的软件架构
- 部署你的薪资系统并向其他用户(或你的员工)发送代币
其他资源
看看下面的教程和GitHub仓库,以获得更多关于构建你的多发送智能合约的灵感。
9. 投票或表决系统
动机
探索区块链系统提供的去中心化好处的另一个好方法是在投票中,确保其选民做出的选择是合法的、安全的,并获得平等的机会。
如果你一直想用全栈式网络开发创建一个全面的网络应用程序,这个项目是一个很好的机会。用户通过应用程序和投票过程的流程、UX/UI设计、注册和安全将是学习如何建立这个应用程序时的主要主题。
项目描述
根据你对建立这个项目的投入程度,你可以创建。
- 为你的小组聊天、俱乐部或学生社团创建一个简单的投票系统
- 为你的地方政府的候选人建立一个更精细、更实用的投票系统
从这里开始
首先,创建一个智能合约,人们可以创建一个新的投票,提及不同的选择,并使用他们的代币为所提及的选择之一投票。创建这个投票系统后,你将学会如何处理地址,实现更高级的数据结构,如哈希姆图,以及如何使用Solidity处理时间。看看社区投票DApp的灵感吧。
为了进一步阐述这个项目,在Solidity中创建一个投票DApp,所有的投票和候选人注册过程都在链上进行。包括注册期、投票期和结束期的时间。此外,还包括候选人如何注册,以及他们如何在投票期间投票一次。
构建你的投票系统时要考虑到安全和严密的物流。确保每个以太坊地址都能正确识别其用户,每个用户都有资格且只能投一次票,并确保投票被准确记录和计算。
看看下面的资源就可以开始了。
你将学习的技能
- 全堆栈网络开发和UX/UI设计
- 规划选民通过你的应用程序从注册到知道投票或选举结果的流程
- 规划你的应用程序的网络架构,包括数据结构
- 处理登记、地址、时间和安全等问题
- Solidity
其他资源
看看这些其他的投票和表决系统的变化,以更好地了解如何构建它们。
受共价物启发的项目想法
构建接下来的这组项目将帮助你更多地了解Covalent等web3数据中间件平台。它所提供的工具和端点可以帮助开发者开始他们在web3的学习之旅,并启动各种web3项目。
10. NFT收集仪表板
动机
web3的另一个受欢迎的用例是买卖不可伪造的代币(NFTs),你可能在新闻和互联网上看到过这种情况。NFTs是存储在区块链上的不可互换的数据单位,可以被出售和交易。照片、歌曲、交易卡、艺术品和收藏品可以作为NFT在OpenSea和Rarible等市场上出售和购买。
项目描述和开始于此
尝试探索、购买和拥有一些你喜欢的NFTs。然后,使用Covalent现成的NFT收藏品仪表盘模板来运行你自己的仪表盘,以查看你的个性化收藏品! 只需插入你自己的Covalent API密钥、仪表盘标题、仪表盘标题横幅,你就可以开始了。
你可以显示底价图、藏品中前五个NFT的预览,以及你的特定藏品在特定区块链上所有NFT藏品的全球视图中的排名。
一旦你完成了,你可以与你的朋友分享你的仪表盘,并与他们的仪表盘进行比较!
你将学习的技能
- NFTs以及如何购买和查看它们
- 个性化Covalent的NFT收集仪表板模板
- 学习Covalent的统一API
11. XY=K DEX仪表板
动机
web3还引入了去中心化金融和去中心化交易所(DEXs)的概念,用户可以从自己的钱包而不是中心化交易所(CEXs)交换资产并提供流动性。要想完整全面地了解什么是DEXs,请看我上个月写的这篇文章。
项目描述并在此开始
使用Covalent由XY=K的端点支持的现成的DEX仪表板来查看你最喜欢的DEX 只要插入你自己的Covalent API密钥、仪表盘标题和仪表盘标题横幅,就可以了。
你可以同时显示区块链和DEX选择器、DEX代币摘要以及在DEX上交易的资产对的详细信息。该模板通过使用XY=K套件的Covalent API端点为多链DEX仪表板提供动力。
完成后,你可以与你的朋友分享你的仪表盘,并将其与他们的仪表盘进行比较!
你将学习的技能
- DEXs以及如何交换资产和提供流动性
- 个人化Covalent的XY=K DEX仪表盘模板
- 学习Covalent的统一API
12. 利用Covalent的API为智能合约定制数据源
动机
在构建你的NFT集合和DEX交易仪表板时,你有没有想过如何为不同的资产检索真实世界的数据源?你可以使用像Chainlink这样的口令将你的智能合约与这些馈送连接起来。
通过Chainlink,智能合约可以使用包括Covalent API在内的外部API访问任何外部数据。
项目描述和开始于此
按照这些代码示例,为任何链上数据创建数据源。你可以使用关于NFT集合市值、DEX交易量和流动性以及多链日志事件的数据源。
接下来,如果你想创建你自己的数据源,请按照 “使用Covalent API与Chainlink “部分的步骤来做。
你将学到的技能
- 创建你自己的自定义数据源
- 了解更多关于Chainlink的信息
- Solidity、函数和继承
你的web3之旅才刚刚开始
有了这些web3项目的想法,你将有一个良好的基础,你可以利用它跳到更复杂的想法。你还会学到与区块链和加密货币有关的新概念,这对你的职业生涯也会很有用。
你可以参加web3黑客马拉松,赚取赏金,加入web3开发者社区,比如Covalent的Alchemist项目,或者继续学习更多关于智能合约的知识,完善你的solidity技能。
如果你觉得这篇文章对你有所帮助,欢迎赞赏~
赞赏