scaffold
Checklist
[ ] - Plan architecture and folder structure
[ ] - Decide which components of the app will be onchain
[ ] - Scaffold the project
[ ] - Initialize git repo (git init && git add -A && git commit -m "initial commit")
[ ] - Don't build exisiting contracts from scratch, use Openzeppelin contracts where ever possible
[ ] - Build smart contracts
[ ] - Deploy smart contracts — fetch wallet/ skill, then deploy using the agent wallet and Safe multisig. This must happen before building the frontend because the frontend needs the deployed contract addresses.
[ ] - Verify smart contracts post deployment — use the verification API to verify on all explorers with one call.
[ ] - (If the app needs historical/queryable onchain data) Initialize an indexer — fetch indexer/ skill. The indexer is initialized in an indexer/ folder after the contract is deployed AND verified.
[ ] - Build frontend using the deployed contract addresses. Use Wagmi, Next.js and Shadcn if user has no preferences
[ ] - Apply known gotchas (see section below) — bump tsconfig.json target to ES2020 right after create-next-app, etc.
[ ] - Create the monskills metadata file (see "Monskills metadata" section below) — do this before the final commit so it lands in git history.
[ ] - Commit all changes to git (git add -A && git commit)
Known gotchas — apply up front
These are well-known paper-cuts you will hit mid-build if you skip them. Patch them when you scaffold, not after the typechecker screams.