/ZJU-blockchain-course-2023

Assignment materials for the Blockchain course at Zhejiang University in 2023.

Primary LanguageTypeScript

ZJU-blockchain-course-2023

⬆ 可以️修改成你自己的项目名。

第二次作业要求(以下内容提交时可以删除):

简易汽车借用系统,参与方包括:汽车拥有者,有借用汽车需求的用户

背景:ERC-4907 基于 ERC-721 做了简单的优化和补充,允许用户对NFT进行租借。

  • 创建一个合约,在合约中发行NFT集合,每个NFT代表一辆汽车。给部分用户测试领取部分汽车NFT,用于后面的测试。

  • 在网站中,默认每个用户的汽车都可以被借用。每个用户可以:

    1. 查看自己拥有的汽车列表。查看当前还没有被借用的汽车列表。
    2. 查询一辆汽车的主人,以及该汽车当前的借用者(如果有)。
    3. 选择并借用某辆还没有被借用的汽车一定时间。
    4. 上述过程中借用不需要进行付费。
  • (Bonus)使用自己发行的积分(ERC20)完成付费租赁汽车的流程

  • 请大家专注于功能实现,网站UI美观程度不纳入评分标准,但要让用户能够舒适操作。简便起见,可以在网上找图片代表不同汽车,不需要将图片在链上进行存储。

以下内容为作业仓库的README.md中需要描述的内容。请根据自己的需要进行修改并提交。

作业提交方式为:提交视频文件仓库的链接到指定邮箱。

如何运行

补充如何完整运行你的应用。

  1. 在本地启动ganache应用。

  2. ./contracts 中安装需要的依赖,运行如下的命令:

    npm install
  3. ./contracts 中编译合约,运行如下的命令:

    npx hardhat compile
  4. ...

  5. ...

  6. ./frontend 中安装需要的依赖,运行如下的命令:

    npm install
  7. ./frontend 中启动前端程序,运行如下的命令:

    npm run start

功能实现分析

简单描述:项目完成了要求的哪些功能?每个功能具体是如何实现的?

建议分点列出。

项目运行截图

放一些项目运行截图。

项目运行成功的关键页面和流程截图。主要包括操作流程以及和区块链交互的截图。

参考内容

如果有其它参考的内容,也请在这里陈列。