
eRPC is a fault-tolerant EVM RPC proxy and re-org aware permanent caching solution. It is built with read-heavy use-cases in mind, such as data indexing and high-load frontend usage.
With the below setup, you get immediate access to 2,000+ chains and 4,000+ public free EVM RPC endpoints.
Using npx:
npx start-erpc
Or, using Docker:
docker run -p 4000:4000 ghcr.io/erpc/erpc
Or, using Railway:
curl 'http://localhost:4000/main/evm/42161' \
--header 'Content-Type: application/json' \
--data '{
"method": "eth_getBlockByNumber",
"params": ["latest", false],
"id": 9199,
"jsonrpc": "2.0"
}'
This setup is ideal for development and testing purposes. For production environments, we recommend extending your configuration with dedicated premium providers and advanced failover settings. See our Configuration Guide for more details.
eth_* method eRPC provides several CLI commands beyond the default server start:
erpc validate <config-file>Validate a configuration file (TS, JS, or YAML) and report any errors, warnings, or notices. Useful in CI pipelines to catch misconfigurations before deployment.
erpc validate erpc.yaml
erpc validate erpc.ts
erpc dump <config-file>Parse a configuration file and output the fully resolved configuration with all eRPC defaults applied. Supports YAML and JSON output. This is useful for inspecting what your final config looks like after eRPC fills in all default values (retry policies, timeouts, selection policies, etc.).
# Output as YAML (default)
erpc dump erpc.yaml
# Output as JSON
erpc dump --format json erpc.ts
# Compare two configs (e.g. before/after a migration)
diff <(erpc dump old-config.yaml) <(erpc dump new-config.yaml)
git clone https://github.com/erpc/erpc.git
make setup
cp erpc.dist.yaml erpc.yaml
vi erpc.yaml
make run
By contributing to this project, you agree that your contributions may be used in both the open-source and enterprise versions of the software. Please review our Contributing Guidelines and Contributor License Agreement before submitting your contributions.
Apache 2.0