Express

Express Tutorial

Middleware for Express.js APIs.

1. Installation

npm install halt

2. Basic Usage

import express from 'express';
import { RateLimiter, InMemoryStore, presets } from 'halt';
import { haltMiddleware } from 'halt/express';

const app = express();

const limiter = new RateLimiter({
  store: new InMemoryStore(),
  policy: presets.PUBLIC_API
});

// Apply globally
app.use(haltMiddleware(limiter));

app.get('/', (req, res) => {
  res.send('Hello World');
});

3. Per-Route Limits

You can create multiple limiters for different routes.

const authLimiter = new RateLimiter({
  store: new InMemoryStore(),
  policy: presets.AUTH_STRICT
});

app.post('/login', haltMiddleware(authLimiter), (req, res) => {
  // Login logic
});