Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

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

๐Ÿ— forkable Ethereum dev stack focused on fast product iterations
https://github.com/scaffold-eth/scaffold-eth

buidler create-react-app dapp eth ethereum ethers graph react scaffoldeth scaffolding solidity uniswap

Last synced: 3 months ago
JSON representation

๐Ÿ— forkable Ethereum dev stack focused on fast product iterations

Awesome Lists containing this project

README

        

# ๐Ÿ— Scaffold-ETH

# ๐Ÿšจ๐Ÿšจ This repository has been archived and is now read-only ๐Ÿšจ๐Ÿšจ

You are still welcome to fork and use as a template but no more changes will be made to this repository.

## ๐ŸŽ– Scaffold-ETH 2 is the latest version, we recommend you fork: https://github.com/scaffold-eth/scaffold-eth-2

---

> everything you need to build on Ethereum! ๐Ÿš€

๐Ÿงช Quickly experiment with Solidity using a frontend that adapts to your smart contract:

![image](https://user-images.githubusercontent.com/2653167/124158108-c14ca380-da56-11eb-967e-69cde37ca8eb.png)

# ๐Ÿ„โ€โ™‚๏ธ Quick Start

Prerequisites: [Node (v18 LTS)](https://nodejs.org/en/download/) plus [Yarn (v1.x)](https://classic.yarnpkg.com/en/docs/install/) and [Git](https://git-scm.com/downloads)

๐Ÿšจ If you are using a version < v18 you will need to remove `openssl-legacy-provider` from the `start` script in `package.json`

> 1๏ธโƒฃ clone/fork ๐Ÿ— scaffold-eth:

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

> 2๏ธโƒฃ install and start your ๐Ÿ‘ทโ€ Hardhat chain:

```bash
cd scaffold-eth
yarn install
yarn chain
```

> 3๏ธโƒฃ in a second terminal window, start your ๐Ÿ“ฑ frontend:

๐Ÿšจ if your contracts are not deployed to localhost, you will need to update the default network in `App.jsx` to match your default network in `hardhat-config.js`.

```bash
cd scaffold-eth
yarn start
```

> 4๏ธโƒฃ in a third terminal window, ๐Ÿ›ฐ deploy your contract:

๐Ÿšจ if you are not deploying to localhost, you will need to run `yarn generate` first and then fund the deployer account. To view account balances, run `yarn account`. You will also need to update `hardhat-config.js` with the correct default network.

```bash
cd scaffold-eth
yarn deploy
```

๐Ÿ” Edit your smart contract `YourContract.sol` in `packages/hardhat/contracts`

๐Ÿ“ Edit your frontend `App.jsx` in `packages/react-app/src`

๐Ÿ’ผ Edit your deployment scripts in `packages/hardhat/deploy`

๐Ÿ“ฑ Open http://localhost:3000 to see the app

๐Ÿšจ๐Ÿ“ก To deploy to a public domain, use `yarn surge`. You will need to have a surge account and have the surge CLI installed. There is also the option to deploy to IPFS using `yarn ipfs` and `yarn s3` to deploy to an AWS bucket ๐Ÿชฃ There are scripts in the `packages/react-app/src/scripts` folder to help with this.`

# ๐Ÿ“š Documentation

Documentation, tutorials, challenges, and many more resources, visit: [docs.scaffoldeth.io](https://docs.scaffoldeth.io)

# ๐Ÿฆ Other Flavors
- [scaffold-eth-typescript](https://github.com/scaffold-eth/scaffold-eth-typescript)
- [scaffold-eth-tailwind](https://github.com/stevenpslade/scaffold-eth-tailwind)
- [scaffold-nextjs](https://github.com/scaffold-eth/scaffold-eth/tree/scaffold-nextjs)
- [scaffold-chakra](https://github.com/scaffold-eth/scaffold-eth/tree/chakra-ui)
- [Scaffold-ETH x Buildbear](https://github.com/BuildBearLabs/scaffold-eth)
- [eth-hooks](https://github.com/scaffold-eth/eth-hooks)
- [eth-components](https://github.com/scaffold-eth/eth-components)
- [scaffold-eth-expo](https://github.com/scaffold-eth/scaffold-eth-expo)
- [scaffold-eth-truffle](https://github.com/trufflesuite/scaffold-eth)

# ๐Ÿ”ญ Learning Solidity

๐Ÿ“• Read the docs: https://docs.soliditylang.org

๐Ÿ“š Go through each topic from [solidity by example](https://solidity-by-example.org) editing `YourContract.sol` in **๐Ÿ— scaffold-eth**

- [Primitive Data Types](https://solidity-by-example.org/primitives/)
- [Mappings](https://solidity-by-example.org/mapping/)
- [Structs](https://solidity-by-example.org/structs/)
- [Modifiers](https://solidity-by-example.org/function-modifier/)
- [Events](https://solidity-by-example.org/events/)
- [Inheritance](https://solidity-by-example.org/inheritance/)
- [Payable](https://solidity-by-example.org/payable/)
- [Fallback](https://solidity-by-example.org/fallback/)

๐Ÿ“ง Learn the [Solidity globals and units](https://docs.soliditylang.org/en/latest/units-and-global-variables.html)

# ๐Ÿ›  Buidl

Check out all the [active branches](https://github.com/scaffold-eth/scaffold-eth/branches/active), [open issues](https://github.com/scaffold-eth/scaffold-eth/issues), and join/fund the ๐Ÿฐ [BuidlGuidl](https://BuidlGuidl.com)!


- ๐Ÿšค [Follow the full Ethereum Speed Run](https://medium.com/@austin_48503/%EF%B8%8Fethereum-dev-speed-run-bd72bcba6a4c)

- ๐ŸŽŸ [Create your first NFT](https://github.com/scaffold-eth/scaffold-eth/tree/simple-nft-example)
- ๐Ÿฅฉ [Build a staking smart contract](https://github.com/scaffold-eth/scaffold-eth/tree/challenge-1-decentralized-staking)
- ๐Ÿต [Deploy a token and vendor](https://github.com/scaffold-eth/scaffold-eth/tree/challenge-2-token-vendor)
- ๐ŸŽซ [Extend the NFT example to make a "buyer mints" marketplace](https://github.com/scaffold-eth/scaffold-eth/tree/buyer-mints-nft)
- ๐ŸŽฒ [Learn about commit/reveal](https://github.com/scaffold-eth/scaffold-eth-examples/tree/commit-reveal-with-frontend)
- โœ๏ธ [Learn how ecrecover works](https://github.com/scaffold-eth/scaffold-eth-examples/tree/signature-recover)
- ๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง [Build a multi-sig that uses off-chain signatures](https://github.com/scaffold-eth/scaffold-eth/tree/meta-multi-sig)
- โณ [Extend the multi-sig to stream ETH](https://github.com/scaffold-eth/scaffold-eth/tree/streaming-meta-multi-sig)
- โš–๏ธ [Learn how a simple DEX works](https://medium.com/@austin_48503/%EF%B8%8F-minimum-viable-exchange-d84f30bd0c90)
- ๐Ÿฆ [Ape into learning!](https://github.com/scaffold-eth/scaffold-eth/tree/aave-ape)

# ๐Ÿ’Œ P.S.

๐ŸŒ You need an RPC key for testnets and production deployments, create an [Alchemy](https://www.alchemy.com/) account and replace the value of `ALCHEMY_KEY = xxx` in `packages/react-app/src/constants.js` with your new key.

๐Ÿ“ฃ Make sure you update the `InfuraID` before you go to production. Huge thanks to [Infura](https://infura.io/) for our special account that fields 7m req/day!

# ๐Ÿƒ๐Ÿ’จ Speedrun Ethereum
Register as a builder [here](https://speedrunethereum.com) and start on some of the challenges and build a portfolio.

# ๐Ÿ’ฌ Support Chat

Join the telegram [support chat ๐Ÿ’ฌ](https://t.me/joinchat/KByvmRe5wkR-8F_zz6AjpA) or buidlguidl [discord](https://discord.gg/pRsr6rwG) to ask questions and find others building with ๐Ÿ— scaffold-eth!

---

๐Ÿ™ Please check out our [Gitcoin grant](https://gitcoin.co/grants/2851/scaffold-eth) too!

### Automated with Gitpod

[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#github.com/scaffold-eth/scaffold-eth)