Ecossistema
Todo o ecossistema @basaltkit/* — 94 pacotes agrupados por área, com as suas versões atuais. Cada pacote é pequeno e focado, funciona por si só, e é publicado de forma independente no npm.
Sempre atualizado
Esta página é gerada no build a partir do package.json de cada pacote, por isso as versões refletem sempre os lançamentos publicados mais recentes.
Fundação
| Pacote | Versão | Descrição |
|---|---|---|
@basaltkit/config | 1.1.2 | Namespaced, typed configuration for Basalt, with dot-path access and container integration. |
@basaltkit/core | 1.5.0 | Foundation of the Basalt ecosystem: token-based DI container, plugin system, lifecycle, hooks and context via AsyncLocalStorage. |
@basaltkit/env | 3.1.1 | Typed environment variable validation with Zod — fails at boot with an aggregated report. |
@basaltkit/events | 1.3.0 | Basalt event bus: domain events typed with Zod, prioritized listeners, wildcards and container integration. |
@basaltkit/events-prisma | 1.3.0 | Prisma-backed implementation of the @basaltkit/events OutboxStore (transactional outbox) — the production reference backend (PostgreSQL/MySQL). Bring your own PrismaClient; ships a reference schema. |
@basaltkit/events-sqlite | 1.2.0 | Durable, SQLite-backed implementation of the @basaltkit/events OutboxStore (transactional outbox), on Node's built-in node:sqlite. Zero external dependencies. |
@basaltkit/logger | 1.3.0 | Structured logger on top of Pino: automatic enrichment with requestId/tenantId via AsyncLocalStorage and redaction of sensitive fields. |
HTTP & API
| Pacote | Versão | Descrição |
|---|---|---|
@basaltkit/express | 2.0.0 | Express adapter for Basalt: run the same typed routes, enrichers and guards on Express that you would on Fastify or Hono. |
@basaltkit/fastify | 2.5.0 | Official Basalt HTTP adapter on top of Fastify: Zod-typed routes, per-request context via AsyncLocalStorage and standardized errors. |
@basaltkit/hono | 2.0.0 | Hono adapter for Basalt: run the same typed routes, enrichers and guards on Hono (Node, Bun, Deno, edge) as on Fastify or Express. |
@basaltkit/http | 2.7.0 | Framework-neutral HTTP core for Basalt: typed routes, request pipeline (validation, enrichers, guards), and error mapping — shared by the Fastify, Express and Hono adapters. |
@basaltkit/sdk | 2.1.0 | Type-safe HTTP client for Basalt APIs: endpoints defined with Zod drive an inferred client with typed errors and transparent token refresh. Frontend-friendly (only Zod). |
Persistência & dados
| Pacote | Versão | Descrição |
|---|---|---|
@basaltkit/backup | 0.3.2 | PostgreSQL backups for Basalt applications, including multi-tenant deployments. |
@basaltkit/cache | 2.0.1 | Driver-agnostic Basalt cache: tags, stale-while-revalidate, tenant scoping and an in-memory driver. Shared backends ship as their own packages (@basaltkit/cache-redis, -tiered). |
@basaltkit/cache-redis | 1.0.0 | Redis cache driver for @basaltkit/cache: a shared cache across processes, with atomic SWR and tag invalidation. |
@basaltkit/cache-tiered | 1.1.2 | Multi-level (tiered) cache driver for @basaltkit/cache — an in-process near cache in front of a far cache (Redis), with read backfill and write/invalidation fan-out. Zero dependencies. |
@basaltkit/files | 6.0.0 | File uploads for Basalt: validation (type/size), per-tenant storage quota, metadata records, signed URLs, and hooks (antivirus/thumbnails) over @basaltkit/storage. |
@basaltkit/files-prisma | 0.2.1 | Prisma-backed implementation of the @basaltkit/files FileStore — the production reference backend (PostgreSQL/MySQL). Bring your own PrismaClient; ships a reference schema. |
@basaltkit/files-versions | 0.1.4 | Document revisions on top of @basaltkit/files — each version points at its own file, so an earlier draft keeps its own bytes and nothing is ever overwritten. |
@basaltkit/prisma | 3.0.0 | Prisma integration for Basalt: tenant-scoping client extension (shared database), LRU client pool (database per tenant) and ctx().db. |
@basaltkit/storage | 5.0.0 | Driver-agnostic Basalt storage: disks, scoping, image pipeline and a local-filesystem driver. Cloud backends ship as their own packages (@basaltkit/storage-s3, -azure, -gcs). |
@basaltkit/storage-azure | 1.4.2 | Azure Blob Storage driver for @basaltkit/storage — put/get/list/delete/SAS URLs over @azure/storage-blob, with an injectable client for testing. |
@basaltkit/storage-gcs | 1.3.2 | Google Cloud Storage driver for @basaltkit/storage — put/get/list/delete/signed URLs over @google-cloud/storage, with an injectable client for testing. |
@basaltkit/storage-s3 | 1.4.0 | S3-compatible storage driver for @basaltkit/storage: AWS S3, MinIO, Cloudflare R2 and friends, with presigned temporary URLs. |
Filas & agendamento
| Pacote | Versão | Descrição |
|---|---|---|
@basaltkit/queue | 3.0.0 | Driver-agnostic Basalt queues: declarative jobs with Zod payloads, context propagation (tenant/requestId) to workers, and a sync driver for tests. Backends ship as their own plugins (@basaltkit/queue-bullmq, -rabbitmq, -sqs, -kafka). |
@basaltkit/queue-bullmq | 1.1.0 | BullMQ/Redis driver and plugin for @basaltkit/queue: background jobs with retries, backoff, delayed delivery, priority and non-destructive job inspection. |
@basaltkit/queue-kafka | 1.2.1 | Kafka driver for @basaltkit/queue: produce/consume jobs with retry and dead-letter topics (no delayed delivery or priority — Kafka has neither). |
@basaltkit/queue-rabbitmq | 1.4.0 | RabbitMQ driver for @basaltkit/queue: AMQP jobs with retries, backoff, delayed delivery and priority via dead-letter queues. |
@basaltkit/queue-sqs | 1.3.0 | Amazon SQS driver for @basaltkit/queue: native delayed delivery, app-level retries with backoff and a dead-letter queue (no priority — SQS has none). |
@basaltkit/scheduler | 1.5.1 | Fluent Basalt scheduler: schedule.job(X).daily().at('03:00'), timezones, withoutOverlapping and @basaltkit/queue integration. |
Autenticação & acesso
| Pacote | Versão | Descrição |
|---|---|---|
@basaltkit/api-keys-ui | 1.3.0 | A self-contained HTML page to manage @basaltkit/auth API keys: create (show once), list and revoke — zero dependencies, no build. |
@basaltkit/auth | 4.1.0 | Authentication for Basalt: password hashing, JWT with refresh rotation and reuse detection, sessions, ready-made /auth routes and route guards. |
@basaltkit/auth-prisma | 2.0.0 | Prisma-backed implementations of every @basaltkit/auth store (users, sessions, refresh tokens, one-time tokens, API keys, MFA) — the production reference backend (PostgreSQL/MySQL). Bring your own PrismaClient; ships a reference schema. |
@basaltkit/auth-saml | 3.0.0 | SAML 2.0 SSO for @basaltkit/auth — SP-initiated login over @node-saml/node-saml (vetted XML-DSig), plugging into Auth.socialLogin. |
@basaltkit/auth-sqlite | 2.0.0 | Durable, SQLite-backed implementations of every @basaltkit/auth store (users, sessions, refresh tokens, one-time tokens, API keys, MFA) built on Node's built-in node:sqlite. Zero external dependencies. |
@basaltkit/permissions | 4.0.0 | Authorization for Basalt, Spatie-style: roles, permissions with wildcards, policies, tenant scoping, super admin and route guards. |
@basaltkit/permissions-prisma | 2.1.0 | Prisma-backed implementation of the @basaltkit/permissions AccessStore — the production reference backend (PostgreSQL/MySQL). Bring your own PrismaClient; ships a reference schema. |
@basaltkit/permissions-sqlite | 2.1.0 | Durable, SQLite-backed implementation of the @basaltkit/permissions AccessStore, on Node's built-in node:sqlite. Zero external dependencies. |
Multi-tenancy & equipas
| Pacote | Versão | Descrição |
|---|---|---|
@basaltkit/teams | 4.0.0 | Teams for Basalt: multi-user tenants with roles, email invitations (accept/revoke), membership management and a teamRole route guard. |
@basaltkit/teams-prisma | 1.1.0 | Prisma-backed implementations of the @basaltkit/teams stores (memberships, invitations) — the production reference backend (PostgreSQL/MySQL). Bring your own PrismaClient; ships a reference schema. |
@basaltkit/teams-sqlite | 1.0.5 | Durable, SQLite-backed implementations of the @basaltkit/teams stores (memberships, invitations) built on Node's built-in node:sqlite. Zero external dependencies. |
@basaltkit/teams-ui | 1.1.2 | A self-contained HTML page to manage @basaltkit/teams: invite/revoke invitations and list/change-role/remove members — zero dependencies, no build. |
@basaltkit/tenancy | 3.1.0 | Multi-tenancy for Basalt: pluggable tenant resolvers (subdomain, domain, header, route), tenant context via AsyncLocalStorage and lifecycle hooks. |
@basaltkit/tenancy-prisma | 2.0.0 | Prisma-backed implementation of the @basaltkit/tenancy TenantSource — the production reference backend (PostgreSQL/MySQL). Bring your own PrismaClient; ships a reference schema. |
@basaltkit/tenancy-sqlite | 1.2.2 | Durable, SQLite-backed implementation of the @basaltkit/tenancy TenantSource, on Node's built-in node:sqlite. Zero external dependencies. |
Faturação & pagamentos
| Pacote | Versão | Descrição |
|---|---|---|
@basaltkit/billing-ui | 1.1.4 | A self-contained HTML page for @basaltkit/subscriptions: show the current plan and available plans, subscribe/switch via hosted Checkout, and manage billing via the Customer Portal. Zero dependencies. |
@basaltkit/subscriptions | 5.0.0 | Billing for Basalt, Cashier/Soulbscription-style: declarative plans, subscriptions with trials, feature flags, usage limits, gateway drivers and idempotent webhooks. |
@basaltkit/subscriptions-pdf | 0.1.5 | Render @basaltkit/subscriptions invoices to PDF with pdfkit — a printable invoice from the same Invoice object, kept out of the dependency-free core. |
@basaltkit/subscriptions-prisma | 3.0.0 | Prisma-backed implementations of the @basaltkit/subscriptions stores (subscriptions, atomic usage metering, webhook idempotency) — the production reference backend (PostgreSQL/MySQL). Bring your own PrismaClient; ships a reference schema. |
@basaltkit/subscriptions-proxypay | 2.1.5 | ProxyPay payment gateway driver for @basaltkit/subscriptions — reference-based Multicaixa/EMIS payments for Angola (AOA), implementing the PaymentGateway contract. |
@basaltkit/subscriptions-sqlite | 3.0.0 | Durable, SQLite-backed implementations of the @basaltkit/subscriptions stores (subscriptions, atomic usage metering, webhook idempotency) built on Node's built-in node:sqlite. Zero external dependencies. |
Pesquisa
| Pacote | Versão | Descrição |
|---|---|---|
@basaltkit/search | 2.0.0 | Full-text search for Basalt: tenant-scoped indexing and querying with a pluggable driver (in-memory for dev/test, Meilisearch for production) and automatic sync from domain events. |
@basaltkit/search-elasticsearch | 2.0.0 | Elasticsearch / OpenSearch driver for @basaltkit/search — multi_match relevance, tenant-scoped, talking to the REST API directly with an injectable fetch (no SDK). |
@basaltkit/search-postgres | 1.2.0 | PostgreSQL full-text search driver for @basaltkit/search — tsvector/tsquery/ts_rank, tenant-scoped, with an injectable pg client for testing. |
Capacidades
| Pacote | Versão | Descrição |
|---|---|---|
@basaltkit/activity | 1.3.2 | User-facing activity log for Basalt, Spatie Activitylog-style: fluent builder, causer/tenant from context and queryable feeds. |
@basaltkit/activity-prisma | 1.1.0 | Prisma-backed implementation of the @basaltkit/activity ActivityStore (activity feed) — the production reference backend (PostgreSQL/MySQL). Bring your own PrismaClient; ships a reference schema. |
@basaltkit/activity-sqlite | 1.0.2 | Durable, SQLite-backed implementation of the @basaltkit/activity ActivityStore (activity feed), on Node's built-in node:sqlite. Zero external dependencies. |
@basaltkit/audit | 3.0.0 | Append-only audit trail for Basalt: automatically records lifecycle hooks and domain events, enriched with actor/tenant/request from the context. |
@basaltkit/audit-prisma | 2.0.1 | Prisma-backed implementation of the @basaltkit/audit AuditStore (append-only trail) — the production reference backend (PostgreSQL/MySQL). Bring your own PrismaClient; ships a reference schema. |
@basaltkit/audit-sqlite | 2.0.1 | Durable, SQLite-backed implementation of the @basaltkit/audit AuditStore (append-only trail), on Node's built-in node:sqlite. Zero external dependencies. |
@basaltkit/audit-viewer | 3.0.2 | Read-only viewer for the @basaltkit/audit trail: tenant-scoped, filterable, paginated queries with aggregate stats, plus a self-contained HTML browser. |
@basaltkit/comments | 4.0.0 | Comments for Basalt: per-resource threads with @mentions and resolve/reopen, tenant-scoped, emitting events that bridge to realtime and notifications. |
@basaltkit/comments-prisma | 1.1.0 | Prisma-backed implementation of the @basaltkit/comments CommentStore — the production reference backend (PostgreSQL/MySQL). Bring your own PrismaClient; ships a reference schema. |
@basaltkit/comments-sqlite | 1.0.5 | Durable, SQLite-backed implementation of the @basaltkit/comments CommentStore, on Node's built-in node:sqlite. Zero external dependencies. |
@basaltkit/drives | 0.3.1 | Connect a tenant's external file-storage accounts (Google Drive, OneDrive/SharePoint, Dropbox) to a Basalt app: provider-neutral contract, encrypted credentials with refresh and rotation, paginated listing, streaming import into @basaltkit/files, and incremental sync. |
@basaltkit/drives-dropbox | 1.0.0 | Dropbox provider adapter for @basaltkit/drives: OAuth with offline refresh, list_folder cursors, streaming download and upload, content_hash checksums, rate-limit and error mapping, and signed webhook verification. |
@basaltkit/drives-google | 1.0.0 | Google Drive provider adapter for @basaltkit/drives: offline OAuth with PKCE, files.list pagination, changes.list incremental sync, streaming download through the CDN redirect, md5 checksums, 403-based rate-limit mapping, and per-channel push notifications. |
@basaltkit/drives-microsoft | 1.0.0 | Microsoft OneDrive / SharePoint provider adapter for @basaltkit/drives: Entra ID OAuth with PKCE and rotating refresh tokens, /delta change feed, opaque @odata.nextLink pagination, pre-signed streaming downloads, quickXorHash checksums and clientState-authenticated Graph subscriptions. |
@basaltkit/exports | 1.2.0 | Data exports for Basalt: render typed export definitions to CSV/TSV/JSON/NDJSON (native, zero-dep) through a pluggable formatter seam, designed to run async via @basaltkit/queue. |
@basaltkit/exports-xlsx | 1.0.3 | XLSX formatter for @basaltkit/exports — writes a valid single-sheet .xlsx (Office Open XML) with a built-in ZIP writer. Zero dependencies. |
@basaltkit/flags | 1.0.5 | Feature flags for Basalt: context-aware evaluation with per-tenant/user targeting and deterministic percentage rollouts. |
@basaltkit/i18n | 1.0.3 | Internationalization for Basalt: context-resolved locale (per user/tenant), typed message catalogs with interpolation and plurals, and Intl-based formatting. Zero dependencies. |
@basaltkit/mailer | 2.1.0 | Driver-agnostic Basalt mailer: typed mail definitions, previews, queueing and HTTP-API drivers (Resend, SES, Mailgun) plus log/memory. SMTP ships as @basaltkit/mailer-smtp. |
@basaltkit/mailer-smtp | 1.0.2 | SMTP driver for @basaltkit/mailer, built on nodemailer — any SMTP server, including Mailpit and MailHog in development. |
@basaltkit/notifications | 1.2.5 | Multi-channel notifications for Basalt: declarative definitions, channel drivers (in-app, mail, custom), per-recipient preferences and queue integration. |
@basaltkit/notifications-prisma | 1.1.0 | Prisma-backed implementation of the @basaltkit/notifications InAppStore (in-app notifications) — the production reference backend (PostgreSQL/MySQL). Bring your own PrismaClient; ships a reference schema. |
@basaltkit/notifications-sqlite | 1.0.2 | Durable, SQLite-backed implementation of the @basaltkit/notifications InAppStore (in-app notifications), on Node's built-in node:sqlite. Zero external dependencies. |
@basaltkit/realtime | 1.5.0 | Realtime for Basalt: server-to-client push over WebSocket/SSE with per-tenant channels, presence, an events bridge, and a pluggable backplane (in-memory or Redis pub/sub). |
@basaltkit/realtime-client | 1.0.3 | Browser client for @basaltkit/realtime: subscribe to per-tenant channels over WebSocket or SSE, route events, and auto-reconnect. Zero dependencies. |
@basaltkit/webhooks | 4.0.0 | Outbound webhooks for Basalt: signed delivery with retries and backoff, per-tenant subscriptions, and automatic dispatch from domain events. |
@basaltkit/webhooks-prisma | 2.1.0 | Prisma-backed implementation of the @basaltkit/webhooks WebhookStore (endpoint subscriptions) — the production reference backend (PostgreSQL/MySQL). Bring your own PrismaClient; ships a reference schema. |
@basaltkit/webhooks-sqlite | 2.1.0 | Durable, SQLite-backed implementation of the @basaltkit/webhooks WebhookStore (endpoint subscriptions), on Node's built-in node:sqlite. Zero external dependencies. |
Admin & UI
| Pacote | Versão | Descrição |
|---|---|---|
@basaltkit/admin | 2.0.0 | Headless admin kit for Basalt: derive table columns, form fields and validation from Zod schemas, plus a framework-agnostic data-source contract. The engine any React admin renders. |
@basaltkit/admin-react | 1.1.0 | React binding for @basaltkit/admin: DataTable and ResourceForm rendered from Zod-derived view models, plus data-source hooks. |
@basaltkit/admin-shadcn | 1.1.1 | shadcn/ui-styled React components for @basaltkit/admin: Button/Input/Table/Card/Badge primitives and styled DataTable/ResourceForm rendering the Zod-derived view models. |
@basaltkit/dashboard | 1.4.5 | Headless admin dashboard model for Basalt: billing metrics (MRR/ARR/churn), queue/audit summaries and a section registry binding admin resources to the SDK. |
Experiência de desenvolvimento
| Pacote | Versão | Descrição |
|---|---|---|
@basaltkit/ai | 1.3.0 | AI-native developer experience for Basalt: a provider-agnostic engine plus `basalt ai` CLI that understands the project's stack, analyzes it, and diagnoses issues — following the framework's own conventions, not inventing new ones. |
@basaltkit/ai-mcp | 0.3.0 | Dev-only MCP bridge that exposes Basalt's AI developer workflows (analyze, doctor — plan/make/review to follow) to MCP clients (Claude Desktop/Code) over stdio. Never a runtime dependency of an app: it only uses the framework's official public APIs. |
@basaltkit/cli | 1.2.5 | The 'basalt' command framework for Basalt apps: define commands, run them against a booted app, and inspect routes and schedules. |
@basaltkit/generator | 1.5.0 | Code scaffolding for Basalt apps (basalt make): generates a full resource vertical — schema, repository, service, DI plugin, typed routes and test. |
@basaltkit/testing | 2.0.3 | Testing kit for Basalt apps: createTestApp with user/tenant impersonation, mail and queue fakes with assertions, and time travel. |
other
| Pacote | Versão | Descrição |
|---|---|---|
@basaltkit/image-sharp | 1.1.7 | sharp-backed image processor for @basaltkit/storage — resize/rotate/blur and JPEG/PNG/WebP/AVIF encoding behind the engine-neutral ImageProcessor contract. |
@basaltkit/mcp | 5.0.0 | Model Context Protocol for Basalt: expose opt-in routes as MCP tools over HTTP (any adapter) or stdio, and consume external MCP servers as a client — all through the neutral route pipeline. |
@basaltkit/mcp-core | 0.4.0 | Zero-dependency Model Context Protocol core for Basalt: the JSON-RPC 2.0 + MCP wire types, a transport-neutral server/dispatcher over function-shaped tools/resources/prompts (with progress + cancellation plumbing), and a stdio transport. Shared by the runtime @basaltkit/mcp and the dev-only AI bridge. |
Instalar
Instala só os pacotes que a tua app precisa — vê Para além do SaaS para escolher um conjunto mínimo.
bash
pnpm add @basaltkit/core @basaltkit/fastify