解锁Web3.0——Scaffold-eth打造以太坊DApp的终极指南

news/2024/9/17 19:09:43/ 标签: 区块链, 智能合约, web3

🚀本系列文章为个人学习笔记,目的是巩固知识并记录我的学习过程及理解。文笔和排版可能拙劣,望见谅。

目录

前言

一、快速部署

1、前期准备:

2、安装项目:

​ 二、配置部署运行环境

1、初始化本地链:

2、编译部署你的合约🛰: 

三、启动项目:

总结 

前言

Scaffold-eth 是搭建以太坊上 dApp 的模板(Template),也是 dApp 优秀作品的集合,让开发人员可以大大提升开发效率,降低踩坑几率,是 web3.0 dApp 开发者的「入门神器」。

项目git官网地址:Scaffold-ETH

它提供了一套完整的工具和模板,使得开发者可以迅速开始在以太坊上进行智能合约的开发和前端界面的构建。Scaffold-ETH 特别注重快速的产品迭代,让开发者可以轻松实验和部署智能合约

Scaffold-ETH 的主要特点包括:

  • 快速开始:提供了一系列的命令和步骤,让开发者可以迅速设置开发环境并开始编码。
  • 智能合约与前端的快速适配:前端界面会根据智能合约的更改自动更新,这大大加快了开发过程。
  • 集成了多种钱包提供商:方便开发者连接不同的钱包并与之交互。
  • 提供了一系列预构建的组件:这些组件可以加速和简化dApp的开发。

此外,Scaffold-ETH 2 是该工具包的最新版本,它提供了更多的功能和改进。它使用了 NextJS、RainbowKit、Hardhat、Foundry、Wagmi 和 TypeScript 等技术栈。Scaffold-ETH 2 还提供了一些自定义的 Wagmi 钩子和工具,这些钩子简化了与部署的智能合约的交互。

一、快速部署

1、前期准备:

Node (v18 LTS) 加上 Yarn (v1.x) 和 Git

2、安装项目:

先从git上拉取项目源代码

git clone https://github.com/scaffold-eth/scaffold-eth.git

进入项目目录

cd scaffold-eth-2

安装依赖

yarn install

 

 如果下载依赖比较慢,可以换淘宝镜像:

yarn config set registry "https://registry.npm.taobao.org"

 二、配置部署运行环境

1、初始化本地链:

在当前这个命令行面板里,启动 👷‍ Hardhat chain:

yarn chain

2、编译部署你的合约🛰: 

新开一个终端输入:

yarn deploy

 ​​​​​​

三、启动项目:

新开第三个终端窗口中,启动你的 📱 前端:

cd scaffold-eth-2
yarn start

 

打开浏览器输入地址:

http://localhost:3000/

即可进入这个Dapp的页面:

总结 

这篇博客详细介绍了如何使用 Scaffold-eth,一个旨在加速以太坊 dApp 开发的模板和工具集合。它强调了 Scaffold-eth 的快速开发环境设置、智能合约与前端的无缝集成、以及对多钱包支持的能力。博客还指导了如何通过简单的命令行操作来克隆、安装、部署项目,并启动本地开发服务器。此外,提到了如何通过切换到淘宝 NPM 镜像来解决依赖下载缓慢的问题。总的来说,这篇博客为读者提供了一个关于如何利用 Scaffold-eth 高效构建和测试 dApp 的实用指南。


http://www.ppmy.cn/news/1523736.html

相关文章

力扣题/回溯/单词搜索

单词搜索 力扣原题 给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中,返回 true ;否则,返回 false 。 单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那…

QT:QWidget 控件属性的介绍

控件属性介绍 🌴enabled 状态属性🌴geometry 几何属性示例一:改变控件尺寸示例二:更变控件位置window frame 的影响 🌴windowTitle 窗口标题🌴windowIcon 窗口图标🌴 qrc机制🌴windo…

iOS 18beta/正式版升级办法分享

随着科技的飞速发展,苹果公司每一次的iOS系统更新都为我们带来了前所未有的便捷与惊喜。如今,iOS 18的发布再次激起了广大iPhone用户的升级热情。为了让大家能够顺利、高效地升级到这一全新系统,今天我将为大家分享几种实用的升级iOS 18的方法…

visio修改默认字体、颜色、形状格式、连接线格式

设计中取消勾选“将主题应用于新建的形状” 在开发工具中打开绘图资源管理器,并分别修改纯文本、连接线、主题的样式

0. 阿里大模型API获取步骤

这里通过阿里云百炼平台获取大模型的API,实际上,支持openai库的API都可以作为学习的开始。 如果在进行之前想了解AI能做什么,你可以访问通义千问,在“玩”够了之后,点击右上角的API服务。 点击立即开通 然后过一些简单…

MongoDB设置系统服务启动教程

1、编辑mongodb.service文件 将MongoDB设置成系统服务,就可以通过systemctl进行启动停止重启,在目录/etc/systemd/system下编写mongodb.service文件: [Unit] DescriptionMongoDB Database Server Documentationhttps://www.mongodb.com/docs…

python转换并提取pdf文件中的图片

#安装fitz包 pip install pymupdf 脚本如下所示: import fitz import re import os import time import sysarguments sys.argvfor arg in arguments:print(arg)def file_name_list(base_dir):for i, j, k in os.walk(base_dir):name [i.replace(.pdf, ) for i …

欧几里得算法求最大公约数

两个不全为0的非负整数m,n的最大公约数记为gcd(m,n),代表能够整除(即余数为0)m和n的最大正整数。 计算gcd(m,n)的欧几里得算法: 第一步&#xf…

Makefile的四种赋值运算符

Makefile有四种赋值运算符:简单赋值(:)、递归赋值()、条件赋值(?)和追加赋值() 1. 简单赋值(:) 作用:覆盖之前的值。若在多次简单赋…

Rancher 与 Kubernetes(K8s)的关系

1. 简介 1.1 Kubernetes 作为容器编排平台 Kubernetes 是一个开源平台,用于自动化部署、扩展和管理容器化的应用。它提供了容器调度、自动伸缩、健康检查、滚动更新等功能。 例子:假设您有一个微服务架构的应用程序,需要运行在多个节…

如何在 Vue 项目中缓存字体文件以提高性能

在现代 Web 开发中,字体文件通常是页面加载时间的重要因素之一。特别是在字体文件较大或网络环境不佳的情况下,用户体验可能会受到影响。本文将详细探讨如何在 Vue.js 项目中优化字体文件的加载和缓存,以提高页面性能。 一、为什么要缓存字体…

`Android NDK` `readelf` 在`Terminal`上的使用(配置`readelf`)

Android NDK readelf 在Terminal上的使用(配置readelf) 当一个 Android APP 需要集成别的地方来的原生库(.so)时,你可能也会跟我一样会有那么几点疑惑: 这个 so 用的什么 NDK 版本编译的?会不…

【conda】理解 `conda` 和 `pip`:Python 包管理工具的全面对比与最佳实践

目录 1. 概述2. 主要区别2.1 包管理范围2.2 环境管理2.3 安装机制2.4 依赖解决 3. 是否可以混用3.1. 混用Conda和Pip的注意事项3.2 混用时的最佳实践 4. 安装位置5. 如何判断包来源5.1 查看包列表5.2 检查包的来源 总结 在 Python 的开发过程中,包管理工具扮演了至关…

深入解析`node-html-to-image`的`main.ts`源码:实现HTML到图片的转换

引言 node-html-to-image是一个强大的Node.js库,它允许开发者将HTML内容转换为图片。本文将深入解析该库的main.ts文件,揭示其内部工作原理,并帮助开发者更好地理解和使用该库。 项目背景与功能概述 node-html-to-image的主要功能是将HTML…

判断语句有几种写法

在编程中,判断语句用于基于特定条件来控制程序的执行流程。以下是一些常见编程语言中判断语句的几种基本写法: ### 1. if 语句 if 语句是最基本的条件判断结构,用于在条件为真时执行一段代码。 **示例**: c if (condition) { // 条件为…

西门子博途零基础学PLC必会的100个指令

#西门子##PLC##自动化##工业自动化##编程##电工##西门子PLC##工业##制造业##数字化##电气##工程师# 工控人加入PLC工业自动化精英社群 工控人加入PLC工业自动化精英社群

深度学习算法:现代人工智能的核心驱动

深度学习(Deep Learning)在人工智能领域表现出色,其复杂但强大的算法驱动了许多突破性应用。从图像分类、自然语言处理到自动驾驶等,深度学习展现了前所未有的可能性。本文将深入剖析深度学习算法的核心概念、主要框架及其面临的挑…

浙大数据结构:01-复杂度3 二分查找

数据结构MOOC PTA习题 01-复杂度3 二分查找 标准的二分查找。 注意下标从1开始&#xff0c;Last结束 没找到返回NotFound Position BinarySearch( List L, ElementType X ) {int nL->Last;int l1,rn;while(l<r){int mid(lr)/2;if(L->Data[mid]>X)rmid;else lm…

奋楫者“先”,中国产业数字化以“存”致远

回顾人类社会发展历程&#xff0c;从甲骨文、纸张&#xff0c;到磁带、光盘&#xff0c;再到硬盘、SSD&#xff0c;数据存储的每一次变革&#xff0c;都推动着人类文明和社会经济飞速发展。 进入到数字经济时代&#xff0c;数据作为核心生产要素&#xff0c;正逐步融入到生产、…

尚品汇-支付宝退款、支付成功库存系统对接实现(四十九)

目录&#xff1a; &#xff08;1&#xff09;支付宝退款 &#xff08;2&#xff09;支付成功处理 &#xff08;3&#xff09;订单模块发送减库存通知 &#xff08;4&#xff09;消费减库存结果 &#xff08;1&#xff09;支付宝退款 直接在浏览器发起请求即可&#xff01; …