Coder Social home page Coder Social logo

dcloudnotes's Introduction

DCloudnotes

介绍

DCloudnotes是一个去中心化云笔记应用。用户可以把自己的笔记内容上传到ipfs,用户只需要花费少量的eth就可以把对应笔记内容的ipfs地址保存到以太坊区块链中(kovan测试网络),同时也保存到moralis的数据库中,便于用户更快速地查看到笔记的列表,然后根据ipfs地址获取自己上传的笔记内容的详情。笔记内容是一个富文本文档,用户除了编写文字,也可以上传图片到ipfs,然后把笔记的内容构造成一个json格式的文件,上传到ipfs分布式存储网络。

目的

在我们平时学习或工作当中,我们都会经常需要做笔记,笔记对于我们来说是非常重要的信息,它会提高我们学习或工作的效率,所以我们觉得有必要把笔记上传到ipfs & filecoin。传统的云笔记应用是把用户的笔记内容保存到中心化的数据库,而数据库是由某个公司管理,用户不能自己掌握自己的数据,存在数据丢失的可能,中心化的数据库也存在存储空间局限性的问题。而DCloudnotes是一个去中心化云笔记应用,用户可将自己的笔记内容保存到ipfs去中心化分布式存储中,然后把ipfs地址记录到以太坊区块链网络中,让用户数据更安全,不可篡改,也可以永久存储;而且ipfs & filecoin也具有庞大的存储空间。解决了传统的云笔记应用存在的问题。

展示

链接: https://hidden-sunset-4510.on.fleek.co/ ( 代码已部署到fleek的ipfs上 )

  1. 登录页面,用户连接MetaMask钱包即可登录进入首页。在首页中,用户可以看到自己的笔记列表,笔记列表是从数据库中获取的,笔记的详情是读取ipfs地址返回的json格式数据来获取的。

  1. 在首页,可查看自己的笔记列表,和查看笔记的内容详情,也可对笔记内容进行修改更新,也可以删除笔记。更新笔记时,是将新的笔记内容以json数据格式上传到ipfs,生成新的ipfs地址。

  1. 在添加页面,用户可以添加笔记,笔记内容是一个富文本文档,除了可以编写文字,也可以上传图片到ipfs,然后把笔记的内容构造成一个json格式的文件,上传到ipfs。

  1. 回收站页面,用户可查看已删除的笔记和笔记的详情,也可恢复笔记到自己的笔记列表,也可把笔记彻底删除。

  1. 在个人页面,用户可修改自己的用户名,用户也可用自己的NFT作为自己的头像。

技术堆栈和工具

  1. Solidity - 编写智能合约
  2. Javascript - 使用reactJs编写前端页面
  3. React routers - reactJs 路由组件
  4. react-moralis - 运用moralis快速开发web3
  5. Hardhat - 智能合约开发框架
  6. Quill - 富文本编辑器

安装

  1. 安装 NodeJS
  2. 安装 Hardhat
  3. 安装 ReactJs
  4. 安装 MetaMask 在浏览器

使用说明

  1. Clone/Download the Repository

  2. 安装依赖:

    npm install
    cd app & npm install

  3. 测试合约:

    npx hardhat test

  4. 编译合约:

    npx hardhat compile

  5. 部署合约:

    npx hardhat run ./scripts/deploy.js --network kovan (部署到kovan测试网络)

  6. 运行应用

    cd app & npm run start

dcloudnotes's People

Contributors

jesserong007 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.