Skip to main content
Version: v1

Command-Line Help for envio

This document contains the help content for the envio command-line program.

Command Overview:

envio

Usage: envio [OPTIONS] <COMMAND>

Subcommands:
  • init — Initialize an indexer with one of the initialization options
  • dev — Development commands for starting, stopping, and restarting the indexer with automatic codegen for any changed files
  • stop — Stop the local environment - delete the database and stop all processes (including Docker) for the current directory
  • codegen — Generate indexing code from user-defined configuration & schema files
  • local — Prepare the local environment for Envio testing
  • start — Start the indexer without any automatic codegen
Options:
  • -d, --directory <DIRECTORY> — The directory of the project. Defaults to current dir ("./")

  • -o, --output-directory <OUTPUT_DIRECTORY> — The directory within the project that generated code should output to

    Default value: generated

  • --config <CONFIG> — The file in the project containing config

    Default value: config.yaml

envio init

Initialize an indexer with one of the initialization options

Usage: envio init [OPTIONS] [COMMAND]

Subcommands:
  • template — Initialize Evm indexer from an example template
  • contract-import — Initialize Evm indexer by importing config from a contract for a given chain
  • fuel — Initialization option for creating Fuel indexer
Options:
  • -n, --name <NAME> — The name of your project

  • -l, --language <LANGUAGE> — The language used to write handlers

    Possible values: javascript, typescript, rescript

envio init template

Initialize the Evm indexer from an example template

Usage: envio init template [OPTIONS]

Options:
  • -t, --template <TEMPLATE> — Name of the template to be used in initialization

    Possible values: greeter, erc20

envio init contract-import

Initialize Evm indexer by importing config from a contract for a given chain

Usage: envio init contract-import [OPTIONS] [COMMAND]

Subcommands:
  • explorer — Initialize by pulling the contract ABI from a block explorer
  • local — Initialize from a local JSON ABI file
Options:
  • -c, --contract-address <CONTRACT_ADDRESS> — Contract address to generate the config from
  • --single-contract — If selected, the prompt will not ask for additional contracts/addresses/networks
  • --all-events — If selected, the prompt will not ask to confirm the selection of events on a contract

envio init contract-import explorer

Initialize by pulling the contract ABI from a block explorer

Usage: envio init contract-import explorer [OPTIONS]

Options:
  • -b, --blockchain <BLOCKCHAIN> — Network from which contract address should be fetched for migration

    Possible values: ethereum-mainnet, goerli, optimism, base, base-sepolia, bsc, gnosis, fantom, polygon, optimism-goerli, optimism-sepolia, moonbeam, arbitrum-one, arbitrum-nova, arbitrum-goerli, arbitrum-sepolia, celo, mumbai, sepolia, linea, polygon-zkevm, scroll, kroma, holesky, blast, blast-sepolia

envio init contract-import local

Initialize from a local JSON ABI file

Usage: envio init contract-import local [OPTIONS]

Options:
  • -a, --abi-file <ABI_FILE> — The path to a JSON ABI file
  • --contract-name <CONTRACT_NAME> — The name of the contract
  • -b, --blockchain <BLOCKCHAIN> — Network from which contract address should be fetched for migration
  • -r, --rpc-url <RPC_URL> — The RPC url to use if the network id used is unsupported by our HyperSync

envio init fuel

Initialization option for creating Fuel indexer

Usage: envio init fuel <COMMAND>

Subcommands:
  • template — Initialize a Fuel indexer from an example template

envio init fuel template

Initialize a Fuel indexer from an example template

Usage: envio init fuel template [OPTIONS]

Options:
  • -t, --template <TEMPLATE> — Name of the template to be used in initialization

    Possible values: greeter

envio dev

Development commands for starting, stopping, and restarting the indexer with automatic codegen for any changed files

Usage: envio dev

envio stop

Stop the local environment - delete the database and stop all processes (including Docker) for the current directory

Usage: envio stop

envio codegen

Generate indexing code from user-defined configuration & schema files

Usage: envio codegen

envio local

Prepare local environment for Envio testing

Usage: envio local <COMMAND>

Subcommands:
  • docker — Local Envio and ganache environment commands
  • db-migrate — Local Envio database commands

envio local docker

Local Envio and ganache environment commands

Usage: envio local docker <COMMAND>

Subcommands:
  • up — Create docker images required for local environment
  • down — Delete existing docker images on local environment

envio local docker up

Create docker images required for local environment

Usage: envio local docker up

envio local docker down

Delete existing docker images on local environment

Usage: envio local docker down

envio local db-migrate

Local Envio database commands

Usage: envio local db-migrate <COMMAND>

Subcommands:
  • up — Migrate the latest schema to the database
  • down — Drop database schema
  • setup — Setup database by dropping schema and then running migrations

envio local db-migrate up

Migrate the latest schema to the database

Usage: envio local db-migrate up

envio local db-migrate down

Drop database schema

Usage: envio local db-migrate down

envio local db-migrate setup

Setup database by dropping schema and then running migrations

Usage: envio local db-migrate setup

envio start

Start the indexer without any automatic codegen

Usage: envio start [OPTIONS]

Options:
  • -r, --restart — Clear your database and restart indexing from scratch