Scaffolder for new Nwire projects. Run `pnpm create nwire <name>` or `npm create nwire <name>` to bootstrap.
dependency injection container with a strongly-typed fluent API
Nwire — typed command and event contracts. defineCommand, defineEvent with public/internal visibility. Zod-validated; shareable across the backend, frontends, BFFs.
Nwire — universal message envelope. messageId, correlationId, causationId, tenant, userId. Zero-dep; every nwire package depends on this.
Nwire — transport-interface contract. `InterfaceBuilder` is the abstract base every transport (HTTP, queue, MCP, GraphQL, …) extends. Foreign hosts implement it. Six universal verbs (.use / .wire / .from / .mount / .run / .boot) plus manifest + attach sea
Nwire — cross-service event bus contract. EventBus interface + InMemoryEventBus default. Production adapters land as @nwire/bus-nats, @nwire/bus-redis, @nwire/bus-kafka.
Nwire — Logger contract + Noop + Console defaults. Production adapters: @nwire/logger-pino, @nwire/logger-winston. Envelope ids auto-attached via loggerForEnvelope.
Nwire — DLQ contract + InMemory default. Production adapters: @nwire/dlq-mongo, @nwire/dlq-bullmq. The runtime routes exhausted-retry failures here.
Nwire — the framework's core primitives. defineAction, defineEvent, defineHandler, defineActor, defineProjection, defineQuery, defineWorkflow, defineModule, defineApp, definePlugin, createApp. MessageEnvelope with correlation/causation. The runtime is the
Nwire — RBAC + permissions wrapped around CASL. defineAbility(user => ...) declares what each user can do; rbacPlugin enforces it on every dispatch.
Nwire CLI — branded TUI on top of @nwire/kernel. Dev, run, please, build, test, fmt, lint, check, ps, logs, cache, ls, studio. One surface for the whole framework.
Nwire — S3 storage adapter. Works with AWS S3, MinIO, Cloudflare R2, Backblaze B2, and anything else speaking the S3 API. Wraps @aws-sdk/client-s3 + @aws-sdk/s3-request-presigner.
Nwire — local filesystem storage adapter. Implements the Storage contract against a base directory. Suitable for development, single-node deployments, and tests.
Nwire — file-snapshot ActorStore + ProjectionStore. JSON snapshot persisted to disk with debounced writes. Survives process restart; tenant-partitioned. Dev/CI use, not production.
Nwire — HTTP transport. httpInterface() builds a Koa app via the 6-verb InterfaceBuilder (.use / .wire / .from / .mount / .run / .boot), adds default middleware (cors, bodyparser, error envelope, healthz), seeds envelope from headers, graceful shutdown.
Nwire — the universal dispatch primitive. One hook() accepts both .use() (sequential koa-compose chain) and .on() (parallel listener) attachments. Built on emittery + a ~30 LOC composer. Standalone, in-process only, ~100 LOC of surface.
Nwire — Express interop adapters. toExpress(httpInterface) mounts a Nwire HTTP interface as Express middleware (use existing Express app + Nwire routes side-by-side). fromExpress(middleware) lets you use any Express middleware inside a Nwire interface (he
OpenTelemetry bridge for the Nwire canonical telemetry stream. Translates every Telemetry record into OTLP spans + events. Plug in any OTEL exporter (Datadog, Honeycomb, Tempo, Vector → GreptimeDB).
Nwire MCP (Model Context Protocol) server — exposes the kernel's CommandRouter as MCP tools over stdio. AI clients (Claude, Cursor, …) drive nwire commands the same way the CLI and Studio do.
Nwire — production process lifecycle. Wraps any Node server (Express, Fastify, Koa, Nest, Nwire interfaces) with K8s-grade graceful shutdown, http-terminator drain, and lightship readiness/liveness probes. Standalone — no framework dependency beyond @nwir
Nwire — system registry scanner. Walks AppDefinition[] manifests and writes the .nwire/ cache (actions, events, actors, projections, queries, modules, routes, event graph). Vite plugin + standalone function.
Nwire — managed Container with plugin lifecycle, framework events, and DI hooks. Composes modules + plugins, boots in order, exposes a Container, fires framework events at every lifecycle transition.
Nwire — NATS-backed EventBus adapter. Core pub/sub OR JetStream (at-least-once + DLQ) — same EventBus contract.
Compatibility shim around @nwire/handler error definitions. New code should import the canonical singletons (Unauthorized, Forbidden, NotFound, Conflict, Gone, BadRequest) directly from @nwire/handler.