Node.js HTTP Framework

TypeScript-first.
Zero dependencies.

A tiny, fully-typed Node.js HTTP framework for everyday APIs. No magic. No runtime bloat. Just clean types and composable handlers.

npm install arcara
src/index.ts
import { Arcara, Router, HttpError } from 'arcara';

const app = new Arcara();

// middleware
app.use((req, _res, next) => {
  console.log(req.method, req.url);
  next();
});

// typed path params — inferred from the route string
app.get('/users/:id', (req, res) => {
  res.json({ id: req.params.id });
});

// error handling
app.onError((err, _req, res) => {
  res.status(err.status).json({ error: err.message });
});

app.listen(3000);
01

TypeScript-first

Path parameters are inferred from route strings at compile time. req.params.id is typed — no casting, no guessing.

02

Zero runtime dependencies

Built on node:http only. No hidden packages, no version conflicts, no supply-chain risk.

03

Minimal API surface

use, get, post, Router, HttpError, serveStatic. Everything you need, nothing you don't.

04

Composable middleware

Global, prefix-scoped, or route-scoped. Write middleware as factory functions — pass options, return a Middleware.

Built by Ala Ben Aissia — solo, fully in TypeScript, zero runtime dependencies.
Loading...