Quickly start developing your offchain monorepo project with minimal configuration overhead using Turborepo
Simple provider that uses Viem client to query account balances
Basic Greeter contract with an external interface
Foundry configuration out-of-the-box
How much ETH do Vitalik and the Zero address hold together?
Unit test setup with Vitest framework
Use ESLint and Prettier to easily find issues as you code
Lint code and check commit messages format on every push.
Run all tests and see the coverage before merging changes.
This repository is a monorepo consisting of 2 packages and 1 app:
@ts-turborepo-boilerplate/contracts
: A library for writing all required smart contracts@ts-turborepo-boilerplate/sample-lib
: A sample library for querying account balances@ts-turborepo-boilerplate/sample-app
: A demo sample app that uses the sample-lib
- Ensure you have
node 20
andpnpm 9.7.1
installed.
- pnpm: package and workspace manager
- turborepo: for managing the monorepo and the build system
- foundry: for writing Solidity smart contracts
- husky: tool for managing git hooks
- tsc: for transpiling TS and building source code
- prettier: code formatter
- eslint: code linter
- vitest: modern testing framework
- Viem: lightweight library to interface with EVM based blockchains
You can further add sorting rules for your monorepo, for example in .prettierrc
you can add:
...
"importOrder": [
"<TYPES>",
...
"",
"<TYPES>^@myproject", //added
"^@myproject/(.*)$", //added
"",
...
],
...
We use IanVs prettier-plugin-sort-imports
Wonderland is a team of top Web3 researchers, developers, and operators who believe that the future needs to be open-source, permissionless, and decentralized.
DeFi sucks, but Wonderland is here to make it better.
We follow the Conventional Commits specification.
The primary license for the boilerplate is MIT. See the LICENSE
file for details.