npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

ethrpc-gateway

v2.3.1

Published

A Web3 provider that handles accounts on its own but delegates chain queries to a 3rd party service

Readme

ETH/RPC Gateway launcher CLI

A command-line tool to launch RPC gateways for Ethereum-compatible chains using preconfigured or custom ETH/RPC endopoints, with support for both read-only interactions and transaction signing using private keys set up locally on the user's development environment.

This utility provides a quick and consistent way to interact with multiple EVM networks from the command line, ideal for scripting, diagnostics, network health checks, and automated transactions.

🧭 Overview

The ETH/RPC Gateway launcher CLI allows you to:

  • 🚀 Launch a local JSON-RPC proxy or relay to a remote ETH/RPC provider.
  • 🌐 Target multiple EVM-compatible L1 & L2 networks (Ethereum, Polygon, Arbitrum, etc.).
  • ⚙️ Use preconfigured endpoints or provide your own.
  • 📊 Inspect basic chain info directly from the terminal.
  • ✍️ Sign transactions with private keys from your local environment.
  • 🔄 Support for ecosystems where RPC providers do not comply with the standard Ethereum JSON-RPC protocol, such as: Conflux Core, Reef, TEN and zkSync.

This makes the gateway a flexible and pretty convenient tool, even for non-standard Ethereum-compatible chains and environments.

📦 Installation

npm install -g ethrpc-gateway

or using yarn:

yarn global add ethrpc-gateway

🛠️ Usage

  • General usage:
ethrpc [<ECOSYSTEM>[:<NETWORK>] [<PORT> [<REMOTE_PROVIDER_URL]]

Listing supported networks:

  • List supported EVM-compatible ecosystems:
ethrpc
  • List supported networks within the specified ecosystem (e.g. Polygon):
ethrpc polygon

Launching a read-only gateway:

  • Launch a gateway with the specified network and port (e.g. Ethereum Sepolia):
ethrpc ethereum:sepolia 7777

Launching a gateway with signing capability:

  • Launch a gateway with the specified network and private keys (e.g. Conflux Core Testnet):
export ETHRPC_PRIVATE_KEYS=["your_private_key_1", ..., "your_private_key_n", ]
ethrpc conflux:core:testnet
  • Launch a gateway with the specified network and remote provider (e.g. Ethereum Mainnet):
export ETHRPC_SEED_PHRASE="your seed phrase here"
export ETHRPC_PROVIDER_URL=https://mainnet.infura.io/v3/you_infura_key_here
ethrpc ethereum:mainnet

🌍 Supported Chains

Testnets (36)

| Ecosystem | Network Name | Default Port | Chain Id | | :-------- | :--------------------- | :----------: | -------: | | Arbitrum | arbitrum:sepolia | 8517 | 421614 | Avalance | avalanche:testnet | 8533 | 43113 | BASE | base:sepolia | 8502 | 84532 | BOBA | boba:bnb:testnet | 8510 | 9728 | | boba:eth:goerli | 8515 | 2888 | CELO | celo:sepolia | 8538 | 11142220 | Conflux | conflux:core:testnet | 8540 | 1 | | conflux:espace:testnet | 8529 | 71 | Cronos | cronos:testnet | 8530 | 338 | Dogechain | dogechain:testnet | 8519 | 568 | Elastos | elastos:testnet | 8513 | 21 | Ethereum | ethereum:sepolia | 8506 | 11155111 | Fuse | fuse:testnet | 8511 | 123 | Gnosis | gnosis:testnet | 8509 | 10200 | KAVA | kava:testnet | 8526 | 2221 | KCC | kcc:testnet | 8537 | 322 | KAIA | kaia:testnet | 8527 | 1001 | Mantle | mantle:sepolia | 8508 | 5003 | Meter | meter:testnet | 8523 | 83 | Metis | metis:sepolia | 8536 | 59902 | Moonbeam | moonbeam:moonbase | 8531 | 1287 | | moonbeam:moonriver | 7531 | 1285 | OKC | okx:oktchain:testnet | 8528 | 65 | | okx:xlayer:sepolia | 8505 | 195 | Optimism | optimism:sepolia | 8503 | 11155420 | Polygon | polygon:amoy | 8535 | 80002 | | polygon:zkevm:testnet | 8512 | 1442 | Reef | reef:testnet | 8532 | 13939 | Scroll | scroll:sepolia | 8514 | 534351 | Syscoin | syscoin:testnet | 8521 | 5700 | | syscoin:rollux:testnet | 8507 | 57000 | TEN | ten:testnet | 8504 | 443 | Ultron | ultron:testnet | 8516 | 1230 | Unichain | unichain:sepolia | 8500 | 1301 | World | worldchain:sepolia | 8501 | 4801 | ZkSync | zksync:sepolia | 8499 | 300

Mainnets (28)

| Ecosystem | Network Name | Default Port | Chain Id | | :-------- | :--------------------- | :----------: | -------: | | Arbitrum | arbitrum:mainnet | 9517 | 42161 | Avalance | avalanche:mainnet | 9533 | 43114 | BASE | base:mainnet | 9502 | 8453 | BOBA | boba:bnb:mainnet | 9510 | 56288 | | boba:eth:mainnet | 9539 | 288 | CELO | celo:mainnet | 9538 | 42220 | Conflux | conflux:core:mainnet | 9540 | 1029 | | conflux:espace:mainnet | 9529 | 1030 | Cronos | cronos:mainnet | 9530 | 25 | Dogechain | dogechain:mainnet | 9519 | 2000 | Elastos | elastos:mainnet | 9513 | 20 | Ethereum | ethereum:mainnet | 9545 | 1 | Gnosis | gnosis:mainnet | 9509 | 100 | KAVA | kava:mainnet | 9526 | 2222 | KCC | kcc:mainnet | 9537 | 321 | KAIA | kaia:mainnet | 9527 | 8217 | Mantle | mantle:mainnet | 9508 | 5000 | Meter | meter:mainnet | 9523 | 82 | Metis | metis:sepolia | 7536 | 1088 | Moonbeam | moonbeam:mainnet | 9531 | 1284 | Optimism | optimism:mainnet | 9520 | 10 | Polygon | polygon:mainnet | 9535 | 137 | | polygon:zkevm:mainnet | 9512 | 1101 | Reef | reef:mainnet | 9532 | 13939 | Scroll | scroll:mainnet | 9514 | 534352 | Syscoin | syscoin:testnet | 9521 | 57 | Ultron | ultron:mainnet | 9516 | 1231 | World | worldchain:mainnet | 9501 | 480

🧱 Built With

  • Node.js
  • Axios
  • Ethers v5
  • js-conflux-sdk
  • zksync-ethers
  • @reef-defi/evm-provider

🔒 Security Notice

  • This tool does read private keys from system environment variables, but not does it read nor store them on disk.
  • Private keys are used only in memory to sign transactions.
  • You must set either the ETHRPC_PRIVATE_KEYS or the ETHRPC_SEED_PHRASE environment variables, or provide your private keys via a secure method during development.

Warning: Never expose private keys in production environments. This tool is meant for development or testing use.

📜 License

MIT © 2025 — Maintained by the Witnet Project.

🤝 Contributing

PRs are welcome! If you'd like to add new features or extend support to more networks, feel free to open an issue or submit a pull request.