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

@faremeter/gateway-nginx

v0.20.1

Published

Nginx and Lua configuration generator from OpenAPI specs with x-faremeter extensions

Readme

@faremeter/gateway-nginx

Generate OpenResty (nginx + Lua) configuration from OpenAPI specs with x-faremeter-* pricing extensions. The generated config intercepts HTTP traffic, enforces payment via a sidecar process, and captures response data for settlement.

See ARCHITECTURE.md for the full gateway architecture, nginx phase model, sidecar protocol, and shared-state reference.

Installation

pnpm install @faremeter/gateway-nginx

Prerequisites

The generated configuration requires OpenResty (nginx with LuaJIT) and the lua-resty-http module.

# macOS
brew install openresty/brew/openresty
opm install ledgetech/lua-resty-http

# Debian/Ubuntu
# See https://openresty.org/en/linux-packages.html

Features

  • Config generation - Produce nginx location blocks and a Lua module from an OpenAPI spec
  • Three transports - HTTP JSON, SSE streaming, and WebSocket frame relay
  • Static analysis - Extract only the response fields that capture expressions reference
  • Search-key optimization - Skip parsing response chunks that cannot contain relevant fields
  • Method dispatch - Multiple HTTP methods on the same path with different pricing rules
  • Spec endpoint - Optionally serve the OpenAPI spec at /.well-known/openapi.yaml

API Reference

Functions

generateConfig

Generate nginx location blocks and a bundled Lua module for a set of parsed routes. Produces:

  • locationsConf — the location block text. The operator includes this inside their own server { } block via include locations.conf;.

  • luaFiles — standalone Lua modules that the generated config will require() at runtime. The operator places these in their lua_package_path. Currently produces a single faremeter.lua bundle.

  • warnings — non-fatal concerns detected at generation time.

Pure function: does no I/O, no network calls, no filesystem access. Safe to call in tests.

| Function | Type | | ---------------- | -------------------------------------------- | | generateConfig | (input: GeneratorInput) => GeneratorOutput |