AponiaJSDocs
Project

Current limitations

Separate implemented AponiaJS behavior from CLI scaffolds and roadmap features.

Not recommended for production

AponiaJS is experimental pre-1.0 software. Evaluate the source and current issue tracker before adopting it for a long-lived workload.

Reviewed against 0.6.0-alpha.18.

Implemented

  • decorated modules, controllers, and the seven HTTP method decorators;
  • request parameter decorators — @Body, @Query, @Param, @Headers, @Cookie, @Ctx, @Req, and @Res — in whole and named forms;
  • route validation with Standard Schema validators (Zod, ArkType, Valibot) and platform-native TypeBox or Elysia t validators across the body, query, params, headers, cookie, and response slots, as raw validators or as @Validation() model classes;
  • RFC 9457 Problem Details responses thrown with httpError and httpErrors;
  • WebSocket gateways with @WebSocketGateway, @SubscribeMessage, @MessageBody, @ConnectedSocket, @WebSocketServer, and the connection, disconnect, and init lifecycle interfaces;
  • singleton class, value, factory, and alias providers;
  • class and explicit-token constructor injection;
  • module imports, exports, re-exports, and graph diagnostics;
  • Elysia application creation, in-process handling, listening, URL access, and closing;
  • direct native Elysia application creation with AponiaFactory.createNative;
  • native Elysia configuration and low-level controller escape hatches;
  • static and DI-configured Elysia plugin modules, plus defineElysiaPlugin and the typed ElysiaRouteContext;
  • statically composed native route types for Eden Treaty, plus direct bootstrap registration for decorated routes;
  • Elysia aot and precompile policy exposed through application options;
  • system, JSON, filtered, and custom logging;
  • project and component generation, including REST resource validation models.

Not implemented

  • runtime guards, interceptors, exception filters, or middleware;
  • framework-owned mapping of native validation failures, which still come from Elysia as 422, or a serialization and unknown-field policy;
  • async provider factories, lifecycle hooks, and non-singleton scopes;
  • testing modules or provider overrides;
  • OpenAPI generation, decorator-wide Eden Treaty inference, and a build-time module compiler;
  • built-in configuration, secrets, authentication, authorization, or rate limiting;
  • GraphQL or microservice platform packages, and the WebSocket work that follows the gateway preview: handshake authentication, per-message schema policy, origin and connection limits, request scopes, and a transport-neutral adapter SPI.

CLI scaffolds are not runtime features

The CLI can create files named guard, filter, interceptor, middleware, pipe, resolver, and non-REST resource transports. These are standalone scaffolds, not classes wired into an implemented runtime contract.

REST resources are the exception: their generated controller, service, module, <name>.model.ts validation models, and entity run against the implemented runtime. Generated gateways and WebSocket resources are implemented too — they mount on the native socket runtime.

See status and roadmap for the milestone each planned capability belongs to, and compare frameworks for the stable alternatives that implement what is missing here.

On this page