Oppsett av Hardhat
Prosjektstillas
Oppsett av Hardhat er en gratis leksjon i Grunnleggende om Web3- og DApp-utvikling på CoddyKit. Dette er leksjon 1 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Grunnleggende om Web3- og DApp-utvikling, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Grunnleggende om Web3- og DApp-utvikling inneholder totalt 4 leksjoner.
Hva er Hardhat?
Hardhat er et utviklingsmiljø for Ethereum som hjelper deg med å kompilere, teste, distribuere og feilsøke smartkontrakter.
- Skrevet i JavaScript/TypeScript og kjøres med Node.js.
- Leveres med et innebygd lokalt Ethereum-nettverk.
- Har et rikt plugin-økosystem (ethers, waffle, gas reporter).
Det er det mest populære alternativet til Truffle og Foundry for team som primært bruker JavaScript.
Forutsetninger
Før du installerer Hardhat, trenger du Node.js (LTS anbefales) og en pakkebehandler som npm eller yarn.
Kontroller versjonene dine for å sikre at verktøykjeden er klar:
node -v
npm -vHardhat er beregnet på Node.js LTS-versjoner, så unngå eksperimentelle versjoner med oddetallsversjonsnummer.
node -v
npm -vOpprette en prosjektmappe
Hvert Hardhat-prosjekt ligger i sin egen mappe med en lokal package.json. Start med å opprette og initialisere mappen:
mkdir my-dapp
cd my-dapp
npm init -yDenne package.json-filen holder oversikt over Hardhat og de andre utviklingsavhengighetene dine.
mkdir my-dapp
cd my-dapp
npm init -yInstallere Hardhat
Installer Hardhat som en utviklingsavhengighet, slik at den ikke tas med i produksjonskoden:
npm install --save-dev hardhatVed å installere lokalt (ikke globalt) låses den nøyaktige versjonen for hvert prosjekt. Det gjør byggingene reproduserbare på tvers av maskiner og CI.
npm install --save-dev hardhatOpprette prosjektstruktur
Kjør Hardhats init-veiviser for å opprette et startprosjekt:
npx hardhat initDu kan velge et JavaScript- eller TypeScript-prosjekt, eller en tom konfigurasjon. Veiviseren oppretter eksempelkontrakter, tester og en konfigurasjonsfil.
npx hardhat initProsjektstruktur
En typisk mappestruktur for et Hardhat-prosjekt ser slik ut:
contracts/— Solidity-kildefilene dine.scripts/— skript for distribusjon og automatisering.test/— testfiler for Mocha/Chai.hardhat.config.js— sentral konfigurasjon.artifacts/ogcache/— genererte byggresultater.
Konfigurasjonsfilen
Filen hardhat.config.js er kjernen i oppsettet ditt. En minimal konfigurasjon eksporterer bare Solidity-versjonen:
require("@nomicfoundation/hardhat-toolbox");
module.exports = {
solidity: "0.8.24",
};Senere kan du utvide den med nettverk, plugins og kompilatorinnstillinger.
require("@nomicfoundation/hardhat-toolbox");
module.exports = {
solidity: "0.8.24",
};Hardhat Toolbox
Hardhat Toolbox samler de vanligste pluginene i én pakke:
- Integrasjon med ethers.js.
- Chai-matchere for påstander.
- Gas reporter og dekning.
- Verifisering på Etherscan.
npm install --save-dev @nomicfoundation/hardhat-toolboxnpm install --save-dev @nomicfoundation/hardhat-toolboxKjøre Hardhat-oppgaver
Hardhat eksponerer funksjonaliteten sin gjennom oppgaver. Vis alle tilgjengelige oppgaver med:
npx hardhatVanlige innebygde oppgaver inkluderer compile, test, node og clean. Du kjører dem alltid via npx for å bruke den lokale installasjonen.
npx hardhatEn første kontrakt
Legg til en enkel kontrakt under contracts/Greeter.sol:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;
contract Greeter {
string public greeting = "Hello, Hardhat";
}Tilstandsvariabelen public får automatisk en getter som du kan kalle etter distribusjon.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;
contract Greeter {
string public greeting = "Hello, Hardhat";
}Git og ignoreringsregler
Genererte mapper bør ikke legges inn i versjonskontrollen. Opprett en .gitignore:
node_modules
artifacts
cache
.envVed å ignorere .env hindrer du at hemmeligheter som private nøkler og RPC-URL-er lekker inn i versjonskontrollen.
node_modules
artifacts
cache
.envKort sjekk
Test forståelsen din av oppsett av Hardhat-prosjekter.
Oppsummering
Du har satt opp et Hardhat-prosjekt fra grunnen av.
- Hardhat er et Node.js-basert utviklingsmiljø for Ethereum.
npx hardhat initoppretter kontrakter, skript, tester og konfigurasjon.hardhat.config.jsdefinerer Solidity-versjon, nettverk og plugins.- Toolbox samler ethers, Chai-matchere, gas-rapportering og verifisering.
- Ignorer
node_modules,artifacts,cacheog.envi Git.
Lær deg Grunnleggende om Web3- og DApp-utvikling med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 29
- Leksjoner
- 105
Ofte stilte spørsmål
Er leksjonen «Oppsett av Hardhat» gratis?
Ja – du kan lese valgfritt 3 av leksjonene i læringsstien Grunnleggende om Web3- og DApp-utvikling, inkludert «Oppsett av Hardhat», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i Grunnleggende om Web3- og DApp-utvikling inneholder totalt 4 leksjoner.
Hva lærer jeg i «Oppsett av Hardhat»?
Prosjektstillas Du øver på Grunnleggende om Web3- og DApp-utvikling med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Grunnleggende om Web3- og DApp-utvikling?
Ingen tidligere erfaring er nødvendig. Grunnleggende om Web3- og DApp-utvikling på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.
Hvor lang tid tar leksjonen «Oppsett av Hardhat»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Grunnleggende om Web3- og DApp-utvikling-leksjonen?
Ja. Alle Grunnleggende om Web3- og DApp-utvikling-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Oppsett av Hardhat
- Kompilere kontrakter
- Skript og oppgaver
- Lokalt nettverk og forgrening