Navigation

    ChainIDE

    ChainIDE 官方论坛/ChainIDE Official Forum

    • Register
    • Login
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    1. Home
    2. WTOM
    W
    • Profile
    • Following 0
    • Followers 0
    • Topics 9
    • Posts 13
    • Best 0
    • Groups 0

    WTOM

    @WTOM

    0
    Reputation
    3
    Profile views
    13
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    WTOM Follow

    Latest posts made by WTOM

    • Flow生态基础设施大起底,想在Flow上开发,这些工具你必须知道

      剖析 Flow Dapp
      Hello, 大家好,又到了学习时间了!想要知道如何在flow上搭建Dapp,就必须先了解在Flow上Dapp是如何构成的。下图概述了建立在Flow区块链上的典型DApp的组成部分。虽然许多dapp的结构不同,但这个架构介绍的基本概念将贯穿整个指导。

      Dapp Client (Dapp 客户端): dapp 客户端是用户与你的Dapp交互的显示界面,网页和移动应用程序是比较常见的dapp 客户端。

      Smart Contract (智能合约): 智能合约是一串代码的集合,将部署在区块链上的一个永久位置,它定义了一个Dapp的核心逻辑。

      User Account (用户账户): 用户账户是区块链上的储存着一个用户所拥有的数字资产的一条记录。

      Transaction (交易): 交易是提交给区块链的一段代码,它改变了一个或多个用户账户或智能合约的状态。所有交易都源于至少一个用户账户。在大多数情况下,一个交易在一个用户账户和一个智能合约之间传递数据。

      State Query(状态查询): 状态查询是向区块链提出的请求,返回有关你的dapp智能合约的信息。

      User Wallet (用户钱包): 用户钱包是一个软件或者硬件,它能控制一个在区块链上的账户访问权限。应用程序客户端通常连接到用户的钱包,以便将交易发送到区块链上。

      Flow Client Library (FCL): FCL是一个框架,它提供了一个标准接口来连接客户端应用程序和用户钱包。

      LG6OFD.bmp

      Flow Playground

      一个基于浏览器的交互式IDE,用于运行flow上的Cadence智能合约。它使用Cadence语言服务器进行全面类型检查和错误报告。Playground是推进你Cadence项目的最快方式。

      直达链接:https://zh.onflow.org/play

      FCL
      npm i -S @onflow/fcl @onflow/types

      Flow 客户端库 (FCL) 使应用程序能够轻松地与所有兼容 FCL 的钱包和其他服务(例如(即将推出的)配置文件、私人信息、通知)集成。这为开发人员让他们的dapp与区块链交互提供了一个强大的基础。FCL目前支持浏览器,并在将来会扩展到其他平台。

      使用 FCL,您可以:

      集成所有兼容的钱包,无需任何其他自定义代码或代码注入
      验证用户
      查询flow区块链
      发送交易(例如初始化资源、发送资产、购买等)
      通过钱包集成签署交易功能,避免密钥管理
      使用 FCL,您最终将能够:

      通过 FCL 兼容钱包对数据进行个人签名
      请求其他用户信息,如电子邮件
      当然FCL是Flow上基于js实现的一种SDK,除了js以外还有其他语言的sdk哦。

      直达链接:https://docs.onflow.org/sdks/

      Flow CLI
      Flow CLI 是一个命令行界面,为构建 Flow 应用程序提供有用的帮助,包含一些命令去与Flow networks 交互,如: 请求账户信息,发送交易等。同时它也包含Flow Emulator。

      直达链接:https://docs.onflow.org/flow-cli/

      Flow Emulator
      一个外观、行为和说话都像 Flow 的开发工具,Flow Emulator 是一种轻量级工具,可模拟真实 的 Flow Blockchain 行为 。模拟器公开了一个实现 Flow Access API 的 gRPC 服务器,该服务器旨在与真实的网络 API 具有近乎相同的功能。

      直达链接:https://docs.onflow.org/emulator/

      VSCode Flow
      有的小伙伴比较喜欢使用vs code开发,那么flow这里也是准备了vscode的扩展插件哦。可以将 Flow 面向资源的智能合约编程语言 Cadence 集成到 Visual Studio Code 中。它提供语法高亮、类型检查、代码是否完成等功能。

      直达链接: https://docs.onflow.org/vscode-extension/

      Fcl-dev-wallet
      FCL 开发钱包是一个模拟的 Flow 钱包,它模拟了FCL使用的协议,模拟用户帐户与 Flow 区块链交互。该项目实现了与 FCL 兼容的接口,但不应该用作构建生产级钱包的参考。

      直达链接:https://github.com/onflow/fcl-dev-wallet

      总结

      好了,今天的基础设施介绍就到这里了,希望能给各位开发者带来一些帮助哦!

      **

      **

      posted in Flow
      W
      WTOM
    • 【转载】合约开发全新技术栈:Hardhat + Ethers + Waffle + Typescript【译】

      本文介绍了一些新的工具链用于开发智能合约,如:Builder、Ethers.js、Waffle 等,适当使用这样新工具(其实每个工具都可以结合在现有工程下使用)可以带来更好的开发体验,尤其是如果你熟悉Typescript。
      以太坊虽然还很年轻,但已经走了很长一段路。当我于2017年开始开发Solidity智能合约和以太坊DApp时,Truffle和Web3.js是行业标准。这些都是很棒的工具。但是,有一些新的工具使开发流程变得更好。

      本文通过创建一个项目,来尝试这些新工具来构建和测试智能合约与DApp。

      本文代码在Starter Kit repo,克隆下来,就可以在功能齐全的Typescript开发环境中进行开发,编译,测试和部署。

      原文链接

      posted in Beginner Tutorial
      W
      WTOM
    • Waffle 英文文档

      Ethereum Waffle 是以太坊智能合约的轻量级测试运行器。 Waffle内置了一些非常不错的测试工具函数,例如用于以太坊地址,哈希和BigNumbers的Chai匹配器,Waffle使用原生Typescript,与Ethers.js配合非常好。目前笔者没有找到较新中文文档,有找到的小伙伴欢迎补充。

      [英文文档]{https://getwaffle.io/}
      屏幕截图 2021-08-31 15:35:44.png

      posted in Beginner Tutorial
      W
      WTOM
    • RE: Hardhat 中英文档

      Hardhat是一个编译、部署、测试和调试以太坊应用的开发环境。它可以帮助开发人员管理和自动化构建智能合约和dApps过程中固有的重复性任务,并围绕这一工作流程轻松引入更多功能。这意味着hardhat在最核心的地方是编译、运行和测试智能合约。

      posted in Beginner Tutorial
      W
      WTOM
    • RE: Solidity 中英文档

      Solidity 是一门面向合约的、为实现智能合约而创建的高级编程语言。这门语言受到了 C++,Python 和 Javascript 语言的影响,设计的目的是能在以太坊虚拟机(EVM)上运行。

      posted in Beginner Tutorial
      W
      WTOM
    • ether.js 中英文档

      ethers.js库旨在为以太坊区块链及其生态系统提供一个小而完整的 JavaScript API 库 它最初是与 ethers.io 一起使用,现在已经扩展为更通用的库。中文文档更新较慢,有能力的建议阅读英文文档。

      中文文档
      屏幕截图 2021-08-31 14:57:11.png

      英文文档
      屏幕截图 2021-08-31 14:59:50.png

      posted in Beginner Tutorial
      W
      WTOM
    • Solidity 中英文档

      中文教程转载于登链社区,英文教程转载于solidity官网。因为中文可能更新不及时,建议有能力的同学优先阅读英文文档。

      中文文档
      9953808d-2033-4abe-b8c5-c98ab545139e-image.png

      英文文档
      2a6f4cf9-6d5b-4330-859d-3a4d82a60c6d-image.png

      posted in Beginner Tutorial
      W
      WTOM
    • Hardhat 中英文档

      中文文档转载于登链社区,英文文档转载于hardhat官网。因为中文可能更新不及时,建议有能力的同学优先阅读英文文档。

      中文文档
      5acb1fd5-9698-4482-a83c-e3d179c9f1c4-image.png

      英文文档
      ae628782-09ba-4401-892b-a9107ec56e56-image.png

      posted in Beginner Tutorial
      W
      WTOM
    • 【转载】使用React、Ethers.js、Solidity和Hardhat构建全栈dApps

      登链社区有一篇非常不错的介绍使用React、Ethers.js、Solidity和Hardhat构建全栈dApps的译文,这里转载了过来,需要注意的的是 npm要使用默认源,否则可能会出现json错误报错。

      我最近加入了Edge & Node,担任开发者关系工程师,并一直在深入研究以太坊的智能合约开发。 我已经确定了我认为用Solidity构建全栈dApps的最佳技术栈:

      ▶︎ 客户端框架 - React
      ▶︎ 以太坊开发环境 - Hardhat
      ▶︎ 以太坊 Web客户端库 - Ethers.js
      ▶︎ API层 - The Graph Protocol

      在学习的过程中,我遇到的问题是,虽然每件事情都有相当好的文档,但对于如何将所有这些事情放在一起,并了解它们如何相互合作,却没有什么真正的文档。 有一些非常好的项目模板,比如scaffold-eth(其中还包括Ethers、Hardhat和The Graph),但对于刚入门的人来说,可能内容太多,难以拾掇。

      我想要一个从前到后的完整指南,告诉我如何使用最新的资源、库和工具来构建全栈以太坊应用。

      原文链接

      posted in Beginner Tutorial
      W
      WTOM
    • 使用4everland免费部署静态网页

      cae54f78-c1c8-455c-a6d3-a8e3e90e2808-image.png

      4EVERLAND是一个Web3.0云计算平台,可帮助开发者基于 IPFS 快速创建、发布以及管理 DWeb。同时,4EVERLAND 计划为所有 DWeb 提供持久化托管及全球加速服务,还将为所有开发者提供 40G 的免费存储空间及免费网络服务,以方便开发者快速进行体验。

      官方文档 https://docs.hosting.4everland.org/guide/ (可跳过此步)

      接https://github.com/WhiteMatrixTech/cell-evolution-all/blob/master/readme.md

      yarn start:webapp
      

      crtl+c ,停止该命令。下面我们将使用自己的钱包部署细胞进化,并将自己生成的SDK绑定到前端上去

      📦 进入智能合约文件夹

      cd packages/
      cd cell-evolution-contracts/
      

      这里我们需要生成下SDK,可参考 cell-evolution-all/packages/cell-evolution-contracts/pages/ 下的ChainIDE-SOP.md https://github.com/WhiteMatrixTech/cell-evolution-all/blob/master/packages/cell-evolution-contracts/pages/ChainIDE-SOP.md

      📦 进入后端文件夹

      cd ..
      cd cell-evolution-app
      

      打开 package.json,修改

          "@white-matrix/cellevolution-sdk": "^0.0.2-a",
          "@white-matrix/event-emitter": "^1.0.0",
      

      ,变成自己的SDK

      📦 安装依赖

      yarn install
      

      💻 开发

      yarn start
      

      🧿 打包

      yarn build
      

      在github中新建一个repository并设为Public

      这里我以0317为例(Repository name可自定义),点击Create repository
      f6f84727-ce56-4151-9645-a4d836f32ebe-image.png

      上传文件到github仓库

      返回cell-evolution-app文件夹,运行

      rm -rf .git
      git init
      git add .
      git commit -m 'Whatever you want to say'
      git branch -M main
      

      注意,下个命令和你自身的github账户和你创建的仓库有关(每个人都不同)

      git remote add origin https://github.com/'你的用户名'/'你的repository name'.git
      

      具体可以参考github页面(以我的账户和0317为例子)这里的第二行
      13091e88-71a6-4d73-8514-77472c91e9b1-image.png

      下一步

      git push -u origin main
      

      依次输入GitHub用户名和密码,依次回车。

      在4everland上传仓库文件

      打开4everland官网,https://www.4everland.org/ 点击右上角的Login
      6bee4eec-aec5-405c-81ee-59a7599d06ab-image.png

      使用github账户登录。

      点击中间的Connect To Git
      17b50235-218c-4d65-8fa7-056f4b2f6b6b-image.png

      选择你刚刚创建好的仓库(以我的0317为例)
      7f17c74a-34f1-464d-a924-d9137d766e9d-image.png

      选择Select
      726d7a50-a567-4d8b-8cbc-ddb8716f01a0-image.png

      默认点击Deploy

      点击Build and Output Settings,选择Build command,输入yarn build,点击Deploy

      等待几分钟

      点击Visit

      切换网络到Rinkeyby,右上角出现ETH地址信息说明配置正确

      当布署成功一段时间后,下面将出现短地址。(以我的为例)

      祝大家玩的开心!

      posted in Beginner Tutorial
      W
      WTOM