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 🙏

© 2025 – Pkg Stats / Ryan Hefner

rrelayer

v1.1.0

Published

The rrelayer sdk

Readme

rrelayer SDK

The official SDK for interacting with rrelayer services.

rrelayer is an opensource powerful, high-performance blockchain transaction relay service built in Rust, designed for seamless integration with any EVM-compatible network. This tool transforms complex blockchain interactions into simple REST API calls, eliminating the need for applications to manage wallets, transaction queuing, or nonce management. For rrelayer supports advanced wallet infrastructure supporting multiple signing providers including AWS KMS hardware security modules, Turnkey self-custody solutions, Fireblocks enterprise MPC custody, Privy managed wallets, AWS Secrets Manager, GCP Secret Manager, PKCS#11 hardware security modules, and raw mnemonic development setups. It's highly scalable and production-ready, enabling you to build robust Web3 applications with reliability and focus exclusively on your business logic. rrelayer has some super cool out-of-the-box features, like automatic top-ups (with safe support), permissions config including allowlists, API keys with restricted access, webhooks, rate limiting, and the ability to configure the gas bump blocks.

Features

  • Config Driven: Define everything in a simple rrelayer.yaml file, making it easy to turn on and off features
  • Multi-Chain Support: Supports all EVM networks
  • Transaction Relaying: Submit transactions to supported blockchain networks efficiently.
  • Transaction Signing: Securely sign transactions using many of the signing providers.
  • Transaction Fee Estimation: Estimate transaction fees for better cost management.
  • Transaction Nonce Management: Handle nonce management to ensure transaction order.
  • Transaction Status Monitoring: Track the status of submitted transactions.
  • Transaction/Signing History: See all the transactions signed by the relayer or messages signed with a deep audit log
  • SDK Integration: Integrate easily with our JS/TS API or rust API or
  • Exposed API: If the SDK is not supported, you can just hit the API directly
  • Extensible Architecture: Easily add support for new blockchain networks with a config update.
  • Configurable Network Policies: Define and enforce network-specific policies for transaction processing.
  • Automated top-ups: Build in background tasks to automatically top up relayers when gas or token funds are becoming low, with safe proxy support.
  • Permissions: Add contract/addresses allowlists to relayers and turn on and off if they can sign messages, typed data, send transactions, and send native ETH.
  • API Keys: Built-in API keys for relayers to allow you to give access to a system without giving access to every part of the rrelayer
  • Webhooks: Notifications built in get notified of the transaction's status every step of the way or if balances are low.
  • Rate Limiting: Built-in rate limiting allowing you to rate limit user transactions allowance by just updating the rrelayer.yaml
  • Flexibility: No hard constraints on features like you can config how often it bumps gas depending on your need. Maybe a liquidation bot may want to bump every block for example.
  • CLI: rrelayer is CLI first, so you can do everything with the command line tool.
  • Full transactions support: rrelayer can send blob transactions and any kind of EVM transaction.

What can I use rrelayer for?

  • Session key relayers: Assign session keys to your backend to do stuff on behalf of users
  • DApp backends: Handle user transactions without wallet management complexity
  • NFT platforms: Automated minting, transfers, and marketplace operations with reliable execution
  • DeFi protocols: Yield farming automation, liquidation bots, and cross-chain operations
  • Enterprise Web3: Simplified blockchain integration for traditional businesses with audit compliance
  • Development workflows: Consistent APIs for local development and comprehensive E2E testing
  • Gasless transactions: Meta-transaction infrastructure for improved user experience
  • Multi-chain applications: Unified transaction interface across different EVM networks
  • High-frequency operations: Advanced queuing system for batch processing and optimization
  • Production infrastructure: Enterprise-grade transaction reliability with comprehensive monitoring
  • Loads more stuff like liquidation bot or trading bots etc

Installation

NPM

npm i rrelayer

PNPM

pnpm i rrelayer

BUN

bun i rrelayer

Usage

Create Client And Authentication

rrelayer has two ways to create clients based on the authentication direction, which is basic auth and API keys; we will explore both below.

Basic Auth

Using the basic authentication which uses the username and password in your api config

import { createClient, TransactionSpeed } from 'rrelayer';
import * as dotenv from "dotenv";
dotenv.config();

// Client also holds some admin methods in which API keys cannot do
export const client = createClient({
  serverUrl: 'http://localhost:8000',
  auth: {
    username: process.env.RRELAYER_AUTH_USERNAME!,
    password: process.env.RRELAYER_AUTH_PASSWORD!,
  },
});

// returns a AdminRelayerClient - import { AdminRelayerClient } from 'rrelayer'
export const relayer = await client.getRelayerClient(
  // The relayer id you want to connect to
  '94afb207-bb47-4392-9229-ba87e4d783cb',
  // This is optional it defaults to fast
  TransactionSpeed.FAST
);

API Key Auth

Using API keys that have restricted permissions to only use the relayer - docs here

import { createRelayerClient, TransactionSpeed } from 'rrelayer';

// returns a RelayerClient - import { RelayerClient } from 'rrelayer'
export let relayer = createRelayerClient({
  serverUrl: 'http://localhost:8000',
  relayerId: '94afb207-bb47-4392-9229-ba87e4d783cb',
  apiKey: 'YOUR_API_KEY',
  // This is optional it defaults to fast
  speed: TransactionSpeed.FAST,
});

You can read about all the functionality here