@usebetterdev/tenant-express
v0.5.4
Published
Express middleware for [@usebetterdev/tenant](https://github.com/usebetter-dev/usebetter). Resolves the tenant from the incoming request and opens a database transaction with `SET LOCAL` so Postgres RLS applies.
Readme
@usebetterdev/tenant-express
Express middleware for @usebetterdev/tenant. Resolves the tenant from the incoming request and opens a database transaction with SET LOCAL so Postgres RLS applies.
Requires Express 5+.
Install
pnpm add @usebetterdev/tenant expressUsage
import express from "express";
import { createExpressMiddleware } from "@usebetterdev/tenant/express";
import { tenant } from "./tenant.js";
const app = express();
app.use(express.json());
app.use("/api", createExpressMiddleware(tenant));
app.get("/api/projects", async (req, res) => {
const db = tenant.getDatabase();
if (!db) {
return res.status(500).json({ error: "No tenant-scoped database" });
}
res.json(await db.project.findMany());
});Peer dependency
Requires express (>= 5.0.0).
