Skip to content

Running

No-code Project

You can run the no-code project really easily with the CLI toolset.

graphql API can only be ran when you have a postgres storage setup in your YAML.

indexer and graphql
rindexer start all

You can change the GraphQL port by doing --port [number] in both all and graphql commands above.

Hot Reload

Add the --watch flag to automatically restart when you edit rindexer.yaml:

indexer and graphql
rindexer start --watch all

Rindexer will validate the new config before restarting. Invalid YAML is rejected and the current process keeps running. See the Hot Reload documentation for full details including production deployment.

Health Monitoring

When you start rindexer with indexing enabled, a health monitoring server automatically starts on port 8080. This provides real-time insights into your indexing infrastructure status.

Quick Health Check

Access the health endpoint at http://localhost:8080/health to get system status:

{
  "status": "healthy",
  "services": {
    "database": "healthy",
    "indexing": "healthy", 
    "sync": "healthy"
  },
  "indexing": {
    "active_tasks": 2,
    "is_running": true
  }
}

Health Server Lifecycle

  • rindexer start indexer (with end_block): Short-lived - dies when historical indexing completes
  • rindexer start indexer (no end_block): Long-lived - stays alive for live indexing
  • rindexer start graphql: No health server - health monitoring not available
  • rindexer start all: Long-lived - follows GraphQL server lifecycle

Rust Project

If you want to run this with docker support for the postgres first run:

docker compose up -d

Then to run the the rust project you can run the following command:

everything
cargo run

We also advise you in production to run your rust projects in release mode, you can run it in release mode using

cargo run --release

You can also do other fancy production builds with other frameworks like jemalloc and other flags, but we will leave that to you to explore.