Skip to content

zero-authAuthentication without the auth platform

JWTs, refresh rotation, secure cookies, CSRF, and access control for Node.js APIs.

A focused auth layer for teams that want control

Ship auth your team can understand.

Keep identity in your application, use standard JWTs at the edge, and add stronger refresh-token protection when your product needs it.

Get productive quickly

ts
const auth = createAuth({
  accessSecret: process.env.JWT_ACCESS_SECRET!,
  refreshSecret: process.env.JWT_REFRESH_SECRET!,
});

app.get("/profile", auth.protect(), (req, res) => {
  res.json({ user: req.user });
});

zero-auth signs and verifies tokens, but your application owns users, passwords, storage, rate limits, and authorization policy. Start with the quick start, then choose a bearer-token or cookie integration.

Documentation map