Skip to content

ExoMonk/evm-cloud

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

99 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

evm-cloud

Deploy production EVM indexing infrastructure in minutes, not weeks.

rindexer Terraform AWS Docker

evm-cloud demo

Every team indexing EVM data rebuilds the same stack: RPC proxy, indexer, database, networking, secrets, monitoring. Weeks of glue code and DevOps before writing a single query.

evm-cloud is an open-source platform that deploys the entire stack with a single command. You bring your contracts and ABIs β€” evm-cloud handles the infrastructure.

brew install ExoMonk/tap/evm-cloud
evm-cloud init        # interactive wizard: pick chain, database, compute
evm-cloud deploy      # provisions infra + deploys workloads

Documentation | Architecture | Getting Started | Examples

What Gets Deployed

[Your contracts + ABIs]
  -> evm-cloud deploy
    -> VPC + networking (security groups, subnets)
    -> Compute (EC2, EKS, k3s, or bare metal)
    -> eRPC (multi-upstream RPC proxy, failover, caching)
    -> rindexer (EVM event indexer, no-code YAML config)
    -> Webhooks (real-time decoded events β†’ your API, sub-5ms)
    -> Database (PostgreSQL, ClickHouse β€” managed or BYO)
    -> Secrets management (AWS Secrets Manager, inline, or ESO)
    -> Monitoring (Prometheus + Grafana)
    -> TLS termination (Cloudflare, Caddy, or ingress-nginx)
    -> [SOON] EVM Node
    -> [SOON] Your services (APIs, ...)

Who Is This For

  • Solo builders shipping on-chain apps who don't want to manage infra
  • Data teams building analytics dashboards on decoded blockchain events
  • Protocol teams needing real-time event monitoring and alerting
  • Anyone tired of stitching together 5+ tools just to index contract events

Quick Start

# Install
brew install ExoMonk/tap/evm-cloud

# Initialize a new project
evm-cloud init

# Deploy everything
evm-cloud deploy

# Tear down when done
evm-cloud destroy --yes

Or try it locally first (no cloud account needed):

evm-cloud local up    # kind cluster + Anvil + eRPC + rindexer + ClickHouse

See the Getting Started guide for the full walkthrough.

Deployment Patterns

Pattern Compute Database Starting At
baremetal_byo_clickhouse Docker Compose (any VPS) ClickHouse (BYO) ~$5/mo
minimal_aws_byo_clickhouse EC2 + Docker ClickHouse (BYO) ~$15/mo
minimal_aws_k3s_byo_clickhouse k3s (lightweight K8s) ClickHouse (BYO) ~$35/mo
minimal_aws_rds EC2 + Docker Managed PostgreSQL (RDS) ~$45/mo
prod_aws_k3s_multi_byo_clickhouse k3s multi-node + Secrets Manager + ESO ClickHouse (BYO) ~$40/mo
aws_eks_BYO_clickhouse EKS (managed Kubernetes) ClickHouse (BYO) ~$110/mo
baremetal_k3s_byo_db Bare metal k3s (any VPS) PostgreSQL (BYO) Your VPS
aws_k3s_cloudflare_ingress k3s + Cloudflare TLS ClickHouse (BYO) ~$17/mo
minimal_aws_external_ec2_byo EC2 (infra only, BYO deployer) ClickHouse (BYO) ~$15/mo

See Choosing a Pattern for help picking the right one.

Install

Homebrew (recommended)

brew install ExoMonk/tap/evm-cloud

curl (GitHub Releases)

curl -fsSL https://github.com/ExoMonk/evm-cloud/releases/latest/download/install.sh | bash

Pinned version

curl -fsSL https://github.com/ExoMonk/evm-cloud/releases/download/0.0.1-alpha7/install.sh | bash -s -- 0.0.1-alpha7

Source build

git clone https://github.com/ExoMonk/evm-cloud.git && cd evm-cloud/cli
cargo install --path .

CI (GitHub Actions)

- name: Install evm-cloud
  run: curl -fsSL https://github.com/ExoMonk/evm-cloud/releases/download/0.0.1-alpha7/install.sh | bash -s -- 0.0.1-alpha7

Architecture

evm-cloud is a modular Terraform platform with a Rust CLI orchestrator. The CLI wraps Terraform + deployer scripts into a unified workflow.

evm-cloud init    β†’ scaffolds Terraform config from evm-cloud.toml
evm-cloud deploy  β†’ provisions infra + deploys workloads (unified)
evm-cloud apply   β†’ terraform apply only (infra layer)
evm-cloud destroy β†’ teardown everything
evm-cloud kubectl β†’ run kubectl against the deployed cluster
evm-cloud local   β†’ local dev stack (kind + Anvil)

11 Terraform modules, 4 compute engines (EC2, EKS, k3s, bare metal), 2 database backends, secrets management, monitoring, and TLS β€” all composable.

See the full Architecture docs for how the modules fit together.

Documentation

Full docs at evm-cloud.xyz:

Prerequisites

  • Terraform/OpenTofu >= 1.14.6 (install)
  • AWS CLI v2 (for AWS deployments)
  • SSH key pair
  • jq (for k3s/EKS deployers)

Contributing

make qa          # fmt, validate, lint, security (checkov)
make verify      # qa + plan all examples
make test-k8s    # Kubernetes chart tests (kind)

License

Apache 2.0