Skip to content

Cyfrin/solidity-by-example.github.io

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Mar 17, 2025
b362650 · Mar 17, 2025
Mar 6, 2025
Sep 13, 2021
May 6, 2023
Nov 7, 2024
Mar 17, 2025
May 6, 2023
Feb 4, 2019
May 6, 2023
Sep 30, 2023
Feb 6, 2019
Nov 14, 2024
Sep 30, 2023
Feb 6, 2019
Nov 2, 2024
Jun 9, 2021
Aug 27, 2024

Repository files navigation

solidity-by-example.github.io

Solidity By Example

License

MIT License

Development

npm i
npm start

Production

npm run build
# Preview production
npm run preview
# Deploy
npm run deploy

Memo

TODO: code split / dynamic imports

## Deploy ##
# copy files from contracts
npx ts-node scripts/copy.ts
# md to react
npx ts-node --project ./scripts/tsconfig.json scripts/md-to-react.ts src/pages/array

# md to react all pages
find src/pages -type d -not -path "*/__snapshots__" -exec npx ts-node --project ./scripts/tsconfig.json scripts/md-to-react.ts {} \;

# build routes
npx ts-node --project ./scripts/tsconfig.json scripts/build-routes.ts

# build search index
npx ts-node --project ./scripts/tsconfig.json scripts/build-search-index.ts

## Compile Solidity ##
solc-select install 0.8.26
solc-select use 0.8.26

# compile single file
solc src/pages/hello-world/HelloWorld.sol

# find and compile sol
find src/pages/hacks -name "*.sol" solc {} \;
find src/pages -type f -name "*.sol" -exec sh -c 'solc "$0"' {} \;

## Misc ##
# rename files
find . -type f -name "index.test.js" -exec sh -c 'mv "$0" "${0%.test.js}.test.tsx"' {} \;