IDebug Documentation
In-process debugging for Node and React
Trace HTTP requests, middleware, function I/O, and database queries into a
bounded memory store. Inspect sessions in a Swagger-like UI at
/__idebug, or open the React overlay in the browser — no
self-hosted backend required.
IDebug is a dev-only toolkit. Enable it while you reproduce bugs; leave it off in production.
What you get
| Surface | Package | What it does |
|---|---|---|
| Shared core | @idebug/core | Sessions, ALS context, ring buffer, redaction, HTTP API handler |
| Express | @idebug/node | Middleware + UI mount + logFunction / logModule |
| NestJS | @idebug/nest | Module, @Loggable(), interceptor, UI at /__idebug |
| Database | @idebug/db | Prisma / TypeORM / Drizzle / Knex / Mongoose / Sequelize queries |
| Server UI | @idebug/ui | AlignUI + Baselayer-themed SPA (light/dark) |
| React | @idebug/react | Fetch/XHR patches + floating overlay |
Start here
CLI init or manual wire — open the inspector in minutes.
Monorepo, workspace packages, and idebug init.
Middleware order, UI mount, and function wrapping.
IDebugModule.forRoot, Loggable, and the performance interceptor.
Browser SDK, overlay, and network event capture.
Nest SQL under the service that issued it — sample on :3003.
Request path, call tree, enter/exit timeline, app-only filter.
Host checks, loopback guard, tokens, DNS rebinding.
Express :3001, Nest :3002, DB :3003, React :5173 demos.
Design principles
- In-process — no remote ingest; data never leaves your Node process unless you add that yourself.
- Concurrent-safe — request sessions use
AsyncLocalStorage(not a global session id). - Bounded memory — ring buffer with hard caps so a long-lived dev server does not leak forever.
- Redacted by default — secrets in headers/bodies become
***before storage. - Double-point paths — function wrappers emit enter + exit so the UI shows
request → outer → inner → outer → response.
Not in scope
Self-hosted multi-app platforms, AI root-cause analysis, production telemetry SaaS, and authenticated multi-tenant dashboards are intentionally out of scope for this track. See Architecture.