Schmied erzeugt ein einfaches Frontend für die Interaktion mit intelligenten Verträgen.
Dieses Tool soll ausdrücklich mit Foundry verwendet werden.
Klonen Sie das Repo.
git clone https://github.com/blacksmith-eth/blacksmith.gitStarten Sie die Schmiedeanwendung.
cd blacksmith
pnpm install
pnpm devStarten Sie in einem zweiten Terminalfenster einen lokalen Testnet -Knoten.
anvilErstellen Sie in einem dritten Terminalfenster ein Foundry -Projekt in einem separaten Verzeichnis.
forge init example
cd exampleBereiten Sie aus dem Foundry -Verzeichnis den Zählervertrag in Ihrem lokalen TestNet -Knoten ein.
forge create src/Counter.sol:Counter --verify --unlocked
--from 0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266
--rpc-url http://localhost:8545
--verifier-url http://localhost:3000/api/verify
--verifier sourcifyHinweis: Wenn dieser Befehl fehlschlägt, siehe Abschnitt mit Foundry -Konfiguration am Ende des ReadMe.
Navigieren Sie zu http: // localhost: 3000, klicken Sie auf die Schaltfläche Brieftasche anschließen und wählen Sie Schmied.
Hinweis: Aktualisieren Sie die Seite, wenn das Brieftaschenmodal nicht entlassen wird.
Wählen Sie den Zählervertrag in der Seitenleiste der Verträge aus und beginnen Sie mit der Interaktion!
Ersetzen Sie den $INFURA_KEY durch Ihren persönlichen API -Schlüssel.
anvil --fork-url https://mainnet.infura.io/v3/ $INFURA_KEYNavigieren Sie zum Schmied "Erste Schritte", indem Sie auf die Überschrift "Schmied" klicken.
Geben Sie im Abschnitt "Vertragsmanagement" die Vertragsadresse für DAI 0x6b175474e89094c44da98b954eedeac495271d0f ein und klicken Sie auf die Schaltfläche Importieren.
Wählen Sie den DAI -Vertrag in der Seitenleiste der Verträge aus und beginnen Sie mit der Interaktion!
Beispiel: Versuchen Sie, 0xad0135af20fa82e106607257143d0060a7eb5cbf in die balanceOf -Funktion einzugeben.
Hinweis: Damit der Vertragsimport erfolgreich ist, muss der Vertrag über Ethercan überprüft werden.
Erstellen Sie eine .env.local im Root -Verzeichnis von Schmied und geben Sie Ihren API -Schlüssel ein, um die Ratengrenzen zu vermeiden.
echo " ETHERSCAN_API_KEY=XXX " >> .env.local Ein Beispiel für die CLI -Argumente, die zum Importieren von Verträgen über forge script erforderlich sind, finden Sie unten.
forge script script/Counter.s.sol:CounterScript --broadcast --verify --unlocked
--sender 0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266
--fork-url http://localhost:8545
--verifier-url http://localhost:3000/api/verify
--verifier sourcifyWenn Sie mit Hardhat arbeiten? Gerüst!