xTaskjs 1.0 ya está disponible: cuentas por rol, documentación y una interfaz personalizable.

Paquetes

@xtaskjs/fastify-http

Adaptador de Fastify para el mismo modelo de controladores usado por core y Express.

npm install @xtaskjs/fastify-http fastify reflect-metadata Ruta del paquete: packages/fastify-http

Resumen

Qué controla este paquete en el runtime

El soporte de Fastify refleja el de Express, pero mantiene el servido, el renderizado de vistas y el comportamiento de archivos estáticos específicos de Fastify tras los mismos contratos del framework.

Qué ofrece

  • Envuelve una instancia de Fastify y expone el contrato compartido del adaptador HTTP de xtask.
  • Admite recursos estáticos y renderizado de plantillas de archivo.
  • Preserva la portabilidad de los controladores entre Express y Fastify.
  • Sirve tanto para los ejemplos de Fastify puro como para Fastify + TypeORM.

Cómo encaja

  • Selected explicitly with new FastifyAdapter(fastifyApp).
  • Es una buena opción cuando quieres el rendimiento de Fastify pero mantener los decoradores y la DI de xtask.

Mapa de uso

Qué peso tiene este paquete dentro del runtime

Arranque

3/5

Entrega HTTP

5/5

Renderizado

4/5

Integraciones

4/5

Rendimiento

5/5

Flujo del paquete

Cómo atraviesa este paquete las fases del runtime de xtaskjs

Antes del arranque

Crea una instancia de Fastify con el logger y los plugins que prefieras antes de conectarla al adaptador del framework.

Durante CreateApplication()

El adaptador de Fastify traduce el contrato compartido de controladores de xtaskjs en rutas Fastify, recursos estáticos y resolución de plantillas.

Durante app.close()

El apagado fluye por la secuencia de cierre de la aplicación para que los recursos de Fastify se detengan junto con el resto del ciclo de vida de xtask.

Superficie API

Exports representativos del paquete original

Runtime del adaptador

  • FastifyAdapter
  • view
  • HttpAdapter
  • HttpRequestHandler

Tipos de petición y respuesta

  • HttpRequestLike
  • HttpResponseLike
  • HttpServerOptions
  • HttpViewResult
  • HttpAdapterType

Opciones del adaptador

  • FastifyAdapterOptions
  • FastifyTemplateEngineOptions
  • FastifyStaticFilesOptions

Uso

Flujo típico de adopción

1. Crea la app Fastify

Parte de una instancia de Fastify cuando quieras ajustar rendimiento a bajo nivel o una composición guiada por plugins.

2. Envuélvela con el adaptador

Pasa new FastifyAdapter(fastifyApp) a CreateApplication() para mantener la misma superficie de controladores usada por node-http y Express.

3. Añade persistencia o vistas

Combina el adaptador con TypeORM o vistas respaldadas por archivos sin reescribir handlers de ruta ni clases de servicio.

Ejemplo

Fragmento de referencia

Arranque de Fastify
import fastify from "fastify";
import { CreateApplication } from "@xtaskjs/core";
import { FastifyAdapter } from "@xtaskjs/fastify-http";

const fastifyApp = fastify({ logger: true });

await CreateApplication({
  adapter: new FastifyAdapter(fastifyApp),
  autoListen: true,
  server: { host: "127.0.0.1", port: 3000 },
});

Ejemplos

Ejemplos oficiales para revisar después

Ejemplos de referencia: 03-fastify_app and 04-typeorm_app

Relacionados

Paquetes que suelen usarse junto a este