Overview
The ETH Basic Typescript Starter is a monorepo designed to help users get started with building decentralized applications (dapps) on the Ethereum blockchain. The starter includes a Counter smart contract that can be deployed on a local Anvil instance, along with a dapp built with React and Typescript. The project also includes various utilities for multi-chain deployments, an upgradeable Counter example, and a Subgraph for indexing smart contracts. Additionally, the starter provides a Docker Compose file for quickly running the Anvil and graph-node locally, as well as wagmi and RainbowKit for generating custom hooks. The project uses Tailwind CSS with DaisyUI and recommends using Rivet, a developer wallet and devtool, for local development.
Features
- Simple Counter smart contract for local deployment on Anvil instance
- Dapp built with React and Typescript using Vite for fast development
- Multi-chain deployment utilities
- Upgradeable Counter example
- Subgraph for indexing smart contracts
- Docker Compose file for quick local setup of Anvil and graph-node
- wagmi-cli for generating custom hooks
- GraphQL-codegen for generating hooks to query the Subgraph from the dapps
- Integration with Tailwind CSS and DaisyUI for styling
- Recommendation to use Rivet for local development
Installation
To get started with the ETH Basic Typescript Starter, follow these steps:
- Set the required environment variables (optional).
- Install the necessary dependencies.
- Start the development process, which will concurrently launch the Anvil instance and start the React app dev server.
- Deploy the Counter smart contract on your local chain and regenerate custom hooks into your wagmi-config.
Summary
The ETH Basic Typescript Starter is a comprehensive monorepo that provides all the necessary tools and resources to start building Ethereum dapps quickly. It includes a Counter smart contract, a React and Typescript dapp, multi-chain deployment utilities, an upgradeable Counter example, and a Subgraph for indexing smart contracts. The starter also includes convenient features like a Docker Compose file for quick local setup and tools like wagmi-cli and RainbowKit for generating custom hooks. With its integration of Tailwind CSS and DaisyUI, the starter offers easy and customizable styling options. Overall, this starter is a valuable resource for anyone looking to dive into Ethereum development.