ponder – Ponder
Skip to content

ponder CLI

API reference

The CLI (provided by the ponder package) is the entrypoint for your project.

Usage: ponder <command> [OPTIONS]
 
Options:
  --root <PATH>          Path to the project root directory (default: working directory)
  --config <PATH>        Path to the project config file (default: "ponder.config.ts")
  -v, --debug            Enable debug logs, e.g. realtime blocks, internal events
  -vv, --trace           Enable trace logs, e.g. db queries, indexing checkpoints
  --log-level <LEVEL>    Minimum log level ("error", "warn", "info", "debug", or "trace", default: "info")
  --log-format <FORMAT>  The log format ("pretty" or "json") (default: "pretty")
  -V, --version          Show the version number
  -h, --help             Show this help message
 
Commands:
  dev [options]          Start the development server with hot reloading
  start [options]        Start the production server
  serve [options]        Start the production HTTP server without the indexer
  db                     Database management commands
  codegen                Generate the ponder-env.d.ts file, then exit

dev

Start the app in development mode.

  • The app automatically restarts when changes are detected in any project file.
  • An auto-updating terminal UI displays useful information.
Usage: ponder dev [options]
 
Start the development server with hot reloading
 
Options:
  --schema <SCHEMA>          Database schema
  -p, --port <PORT>          Port for the web server (default: 42069)
  -H, --hostname <HOSTNAME>  Hostname for the web server (default: "0.0.0.0" or "::")
  --disable-ui               Disable the terminal UI
  -h, --help                 display help for command

start

Start the app in production mode.

  • Project files are built once on startup, and file changes are ignored.
  • The terminal UI is disabled.
Usage: ponder start [options]
 
Start the production server
 
Options:
  --schema <SCHEMA>          Database schema
  -p, --port <PORT>          Port for the web server (default: 42069)
  -H, --hostname <HOSTNAME>  Hostname for the web server (default: "0.0.0.0" or "::")
  -h, --help                 display help for command

serve

Start the app in server-only mode. This option can be used to horizontally scale the HTTP server in production.

  • Only works with Postgres.
  • Project files are built once on startup, and file changes are ignored.
  • Indexing is disabled.
  • The HTTP server runs as normal, serving data from the connected database.
Usage: ponder serve [options]
 
Start the production HTTP server without the indexer
 
Options:
  --schema <SCHEMA>          Database schema
  -p, --port <PORT>          Port for the web server (default: 42069)
  -H, --hostname <HOSTNAME>  Hostname for the web server (default: "0.0.0.0" or "::")
  -h, --help                 display help for command

codegen

Write or update the ponder-env.d.ts file.

Usage: ponder codegen [options]
 
Generate the ponder-env.d.ts file, then exit
 
Options:
  -h, --help  display help for command

db

Database management commands.

list

List all ponder start instances that have ever ran in the connected database.

Usage: ponder db list [options]
 
List all Ponder deployments
 
Options:
  -h, --help  display help for command
Result
 Schema Active Last active Table count
├───────────────┼──────────┼────────────────┼─────────────┤
 indexer_prod      yes            ---          10
 test       no    26m 58s ago          10
 demo       no      1 day ago           5

prune

Drop all database tables, functions, and schemas created by Ponder deployments that are not currently active.

Usage: ponder db prune [options]
 
Drop all database tables, functions, and schemas created by Ponder deployments that are not active
 
Options:
  -h, --help  display help for command