← Back to archive

Repo of the Day

scaffold-eth/scaffold-eth

Published: Dec 14, 2021

Open repository ↗

🏗 forkable Ethereum dev stack focused on fast product iterations

Summary

Scaffold-ETH is a forkable Ethereum development stack that combines a Hardhat smart-contract environment with a React frontend, aimed at quick dApp prototyping. The repository is archived and read-only, with the maintainers directing new work to Scaffold-ETH 2.

What it is useful for

The stack removes the wiring work that usually slows down Ethereum experimentation. Engineers can edit a contract in packages/hardhat/contracts/YourContract.sol and see a frontend that adapts to it, then iterate on both sides without rebuilding tooling each time. Branch examples linked from the README cover common patterns: simple NFTs, token vendors, decentralized staking, multi-sig wallets, commit/reveal schemes, signature recovery (ecrecover), and a minimum-viable DEX. The setup also supports public deployment through yarn surge, yarn ipfs, or yarn s3, which is handy for hosting demos without standing up your own infrastructure. It pairs naturally with the Speedrun Ethereum challenges for engineers who want a portfolio of small, finished dApps.

How engineers can use it

The README documents Node v18 LTS, Yarn v1.x, and Git as prerequisites, and warns that older Node versions require removing openssl-legacy-provider from the start script.

The documented local workflow uses three terminals:

  1. Clone and install: git clone https://github.com/scaffold-eth/scaffold-eth.git, then cd scaffold-eth && yarn install.
  2. Start the local Hardhat chain: yarn chain.
  3. Start the React frontend in a second terminal: yarn start (serves http://localhost:3000).
  4. Deploy in a third terminal: yarn deploy.

For non-localhost networks the README says you need to run yarn generate first, fund the deployer (check with yarn account), and align the default network in hardhat-config.js and App.jsx. Testnet or production use requires replacing ALCHEMY_KEY in packages/react-app/src/constants.js and updating the InfuraID.

Because the repo is archived, treat it as a forkable template rather than an actively maintained project, and follow the README's pointer to Scaffold-ETH 2 if you want ongoing updates.