create-ponder
The create-ponder CLI tool creates a new Ponder project with package.json, ponder.config.ts, ponder.schema.ts, ABIs, and other project files set up for you. It's the easiest way to get started with Ponder.
pnpm create ponder {...options}Options
Usage:
  $ create-ponder <directory> [options]
 
Options:
  -t, --template [id]             Use a template
  --etherscan [url]               Use the Etherscan template with the specified contract URL
  --etherscan-api-key [key]       Etherscan API key for Etherscan template
  --subgraph [id]                 Use the subgraph template with the specified subgraph ID
  --subgraph-provider [provider]  Specify the subgraph provider
  --npm                           Use npm as your package manager
  --pnpm                          Use pnpm as your package manager
  --yarn                          Use yarn as your package manager
  --skip-git                      Skip initializing a git repository
  --skip-install                  Skip installing packages
  -h, --help                      Display this message
  -v, --version                   Display version numberTemplates
Templates help get you started faster by copying contract addresses, ABIs, and deployment blocks from an existing source.
Etherscan contract link
The --etherscan [url] option creates a project using the address, ABI, and deployment block number of a contract on a block explorer. Enter the full URL, not just the contract address.
Chain support
The template uses the viem/chains list of block explorer URLs to determine the chain ID and fetch the contract ABI. Please reference the viem/chains definitions to see if your block explorer is supported. If you'd like to use an unsupported block explorer, please open a PR there to add it.

Subgraph ID
The --subgraph [id] option creates a project from an existing subgraph by fetching the addresses, ABIs, and start blocks for each event source defined in subgraph.yaml.
To find the subgraph ID, go to the subgraph's page on the hosted service or Graph Explorer.

Example projects
The -t, --template [id] option creates a new project from one of the example projects.
For example, this command creates a project using the feature-factory example project.
pnpm create ponder --template feature-factoryHere are the available projects:
| Name | Template ID | Link | 
|---|---|---|
| Factory contract | feature-factory | GitHub | 
| Custom event filter | feature-filter | GitHub | 
| Multiple chains | feature-multichain | GitHub | 
| Proxy contract | feature-proxy | GitHub | 
| Contract calls | feature-read-contract | GitHub | 
| Friendtech project | project-friendtech | GitHub | 
| Uniswap V3 flash loans | project-uniswap-v3-flash | GitHub | 
| Basic ERC20 token | reference-erc20 | GitHub | 
| Basic ERC721 token | reference-erc721 | GitHub |