Limitations & roadmap
Limitations & roadmap
Section titled “Limitations & roadmap”This page is intentionally honest: what does not work well yet and what we are aiming for next. It is not a dated release plan—order and timing can change. For shipped changes, see the Changelog.
Current limitations
Section titled “Current limitations”| Area | What to expect |
|---|---|
| WebSockets on Node.js | The WebSocket plugin responds with HTTP 501 on Node.js. Upgrades work on Bun and Deno. For real-time on Node today, use another stack or run the API on Bun/Deno for the WS surface. |
| GraphQL | The full decorator pipeline (@Resolver, @GQLQuery, @GQLMutation, @Arg) is working as of v1.0.1. Install the graphql peer dep (bun add graphql) and register resolvers via resolvers: [...] on the plugin or app.include(). Subscriptions and schema stitching are not yet hardened for production. |
| ORM integrations | Drizzle has first-class DI helpers (registerDrizzle, @InjectDB). Prisma and TypeORM are not yet at the same level of built-in, documented integration—you can still use them directly inside your services. |
| Event bus handlers | @On(‘event’) decorator-style listeners are not yet implemented. Use the functional globalEvents.on(...) API instead. |
What shipped in v1.2.0
Section titled “What shipped in v1.2.0”All P0 and P1 roadmap items are now live:
- ✅ CLI scaffolding —
veloce generate module/controller/service/resolver/dto/middleware/plugin - ✅ Graceful shutdown —
app.onShutdown(), SIGTERM/SIGINT, configurable timeout - ✅ Exception filters —
@Catch(),app.useFilter(),FilterManager - ✅ Interceptors —
@UseInterceptor(),app.useInterceptor(),ExecutionContext - ✅ Streaming responses —
@SSE(),@Stream(contentType)onAsyncGeneratorhandlers - ✅ Event bus —
EventBus,globalEventssingleton - ✅ Extra decorators —
@Throttle,@ApiVersion,@ResponseHeader,@Redirect,@Deprecated - ✅ Test isolation —
isolate(),compileTestApp() - ✅ OpenAPI 3.1 —
jsonSchemaDialect,nullablenormalization
Planned updates (directional)
Section titled “Planned updates (directional)”Priorities the maintainers care about; not a promise of order or date.
- ORM choice — Make Drizzle, Prisma, and TypeORM practical, documented options so teams can pick an ORM without fighting the framework.
- WebSockets on Node.js — Replace the Node 501 path with a real upgrade integration (e.g.
wsor equivalent) so the same decorator-based API works on Node as on Bun/Deno. @On(‘event’)decorator — Decorator-style event listeners as an alternative to the functionalglobalEvents.on(...)API.- GraphQL — Hardening subscriptions and schema stitching for production.
- Benchmarks public suite — Published numbers comparing Veloce-TS with Hono, Elysia, Fastify, and NestJS.
How to contribute or discuss
Section titled “How to contribute or discuss”- Shipped work: Changelog and the GitHub repository.
- Ideas and proposals: GitHub Discussions.