Frameworks

Framework Integrations

evlog supports every major TypeScript framework. Choose your stack and get started in minutes.

evlog provides native integrations for every major TypeScript framework. The same core API (log.set(), createError(), parseError()) works identically everywhere. Only the setup differs.

Overview

FrameworkImportTypeLogger AccessStatus
Nuxtevlog/nuxtModuleuseLogger(event)Stable
Next.jsevlog/nextFactoryuseLogger()Stable
SvelteKitevlog/sveltekitHooksevent.locals.log / useLogger()Stable
Nitroevlog/nitroModuleuseLogger(event)Stable
TanStack Startevlog/nitro/v3ModuleuseRequest().context.logStable
NestJSevlog/nestjsModuleuseLogger()Stable
Expressevlog/expressMiddlewarereq.log / useLogger()Stable
Honoevlog/honoMiddlewarec.get('log')Stable
Fastifyevlog/fastifyPluginrequest.log / useLogger()Stable
Elysiaevlog/elysiaPluginlog (context) / useLogger()Stable
Cloudflare Workersevlog/workersFactorycreateWorkersLogger()Stable
StandaloneevlogManualcreateLogger() / createRequestLogger()Stable
AstroevlogManualcreateRequestLogger()Guide
Customevlog/toolkitBuild your owncreateMiddlewareLogger()Beta

Full-Stack Frameworks

Nuxt

Auto-imported useLogger, createError, and parseError. Zero config.

Next.js

createEvlog() factory with withEvlog() handler wrapper and client provider.

SvelteKit

Handle and handleError hooks with request-scoped logger on event.locals.log.

Nitro

Module for both Nitro v2 and v3 with plugin-based drain and enrichment hooks.

TanStack Start

Uses Nitro v3 module with async context for seamless logging in server functions.

NestJS

EvlogModule.forRoot() with global middleware, exception filter, and async config.

Server Frameworks

Express

Middleware with req.log and 4-argument error handler.

Hono

Middleware with typed c.get('log') via EvlogVariables.

Fastify

Plugin with request.log that shadows Fastify's built-in pino logger.

Elysia

Plugin with log in route context via Elysia's derive.

Cloudflare Workers

Factory for creating request-scoped loggers with Cloudflare-specific context.

Standalone

For scripts, CLI tools, queues, and any TypeScript process.

Custom Integration

Build your own middleware with the evlog toolkit API.
All frameworks support the same features: wide events, structured errors, drain adapters, enrichers, sampling, and AI SDK integration.

Vite Plugin

For any Vite-based project, the evlog/vite plugin adds build-time optimizations:

  • Auto-initialization — no initLogger() call needed
  • Debug strippinglog.debug() removed from production builds
  • Source location — inject __source: 'file:line' into log calls

Works with SvelteKit, Hono (via vite-node), and any Vite-powered setup. Nuxt users get these features via the evlog/nuxt module options.