Ecosystem
Ecosystem
Plugins maintained by the Fastify team are listed under Core while plugins maintained by the community are listed in the Community section.
Core
@fastify/acceptsto have accepts in your request object.@fastify/accepts-serializerto serialize to output according to theAcceptheader.@fastify/any-schemaSave multiple schemas and decide which one to use to serialize the payload.@fastify/authRun multiple auth functions in Fastify.@fastify/autoloadRequire all plugins in a directory.@fastify/awilixDependency injection support for Fastify, based on awilix.@fastify/aws-lambdaallows you to easily build serverless web applications/services and RESTful APIs using Fastify on top of AWS Lambda and Amazon API Gateway.@fastify/basic-authBasic auth plugin for Fastify.@fastify/bearer-authBearer auth plugin for Fastify.@fastify/cachingGeneral server-side cache and ETag support.@fastify/circuit-breakerA low overhead circuit breaker for your routes.@fastify/compressFastify compression utils.@fastify/cookieParse and set cookie headers.@fastify/corsEnables the use of CORS in a Fastify application.@fastify/csrf-protectionA plugin for adding CSRF protection to Fastify.@fastify/diagnostics-channelPlugin to deal withdiagnostics_channelon Fastify@fastify/early-hintsPlugin to add HTTP 103 feature based on RFC 8297.@fastify/elasticsearchPlugin to share the same ES client.@fastify/envLoad and check configuration.@fastify/etagAutomatically generate ETags for HTTP responses.@fastify/expressExpress compatibility layer for Fastify.@fastify/flashSet and get flash messages using the session.@fastify/formbodyPlugin to parse x-www-form-urlencoded bodies.@fastify/funkyMakes functional programming in Fastify more convenient. Adds support for Fastify routes returning functional structures, such as Either, Task or plain parameterless function.@fastify/helmetImportant security headers for Fastify.@fastify/hotwireUse the Hotwire pattern with Fastify.@fastify/http-proxyProxy your HTTP requests to another server, with hooks.@fastify/jwtJWT utils for Fastify, internally uses fast-jwt.@fastify/kafkaPlugin to interact with Apache Kafka.@fastify/leveldbPlugin to share a common LevelDB connection across Fastify.@fastify/middieMiddleware engine for Fastify.@fastify/mongodbFastify MongoDB connection plugin, with which you can share the same MongoDB connection pool across every part of your server.@fastify/multipartMultipart support for Fastify.@fastify/mysqlFastify MySQL connection plugin.@fastify/nextjsReact server-side rendering support for Fastify with Next.@fastify/oauth2Wrap aroundsimple-oauth2.@fastify/one-line-loggerFormats Fastify's logs into a nice one-line message.@fastify/passportUse Passport strategies to authenticate requests and protect route.@fastify/postgresFastify PostgreSQL connection plugin, with this you can share the same PostgreSQL connection pool in every part of your server.@fastify/rate-limitA low overhead rate limiter for your routes.@fastify/redisFastify Redis connection plugin, with which you can share the same Redis connection across every part of your server.@fastify/reply-fromPlugin to forward the current HTTP request to another server.@fastify/request-contextRequest-scoped storage, based on AsyncLocalStorage (with fallback to cls-hooked), providing functionality similar to thread-local storages.@fastify/response-validationA simple plugin that enables response validation for Fastify.@fastify/routesPlugin that provides aMapof routes.@fastify/routes-statsProvide stats for routes usingnode:perf_hooks.@fastify/schedulePlugin for scheduling periodic jobs, based on toad-scheduler.@fastify/secure-sessionCreate a secure stateless cookie session for Fastify.@fastify/sensibleDefaults for Fastify that everyone can agree on. It adds some useful decorators such as HTTP errors and assertions, but also more request and reply methods.@fastify/sessiona session plugin for Fastify.@fastify/soap-clienta SOAP client plugin for Fastify.@fastify/staticPlugin for serving static files as fast as possible.@fastify/swaggerPlugin for serving Swagger/OpenAPI documentation for Fastify, supporting dynamic generation.@fastify/swagger-uiPlugin for serving Swagger UI.@fastify/throttlePlugin for throttling the download speed of a request.@fastify/type-provider-json-schema-to-tsFastify type provider for json-schema-to-ts.@fastify/type-provider-typeboxFastify type provider for Typebox.@fastify/under-pressureMeasure process load with automatic handling of "Service Unavailable" plugin for Fastify.@fastify/url-dataDecorate theRequestobject with a method to access raw URL components.@fastify/viewTemplates rendering (ejs, pug, handlebars, marko) plugin support for Fastify.@fastify/viteIntegration with Vite, allows for serving SPA/MPA/SSR Vite applications.@fastify/websocketWebSocket support for Fastify. Built upon ws.@fastify/zipkinPlugin for Zipkin distributed tracing system.
Community
@aaroncadillac/crudify-mongoA simple way to add a crud in your fastify project.@applicazza/fastify-nextjsAlternate Fastify and Next.js integration.@blastorg/fastify-aws-dynamodb-cacheA plugin to help with caching API responses using AWS DynamoDB.@clerk/fastifyAdd authentication and user management to your Fastify application with Clerk.@coobaha/typed-fastifyStrongly typed routes with a runtime validation using JSON schema generated from types.@dnlup/fastify-docA plugin for sampling process metrics.@dnlup/fastify-trapsA plugin to close the server gracefully onSIGINTandSIGTERMsignals.@eropple/fastify-openapi3Provides easy, developer-friendly OpenAPI 3.1 specs + doc explorer based on your routes.@ethicdevs/fastify-custom-sessionA plugin lets you use session and decide only where to load/save from/to. Has great TypeScript support + built-in adapters for common ORMs/databases (Firebase, Prisma Client, Postgres (wip), InMemory) and you can easily make your own adapter!@ethicdevs/fastify-git-serverA plugin to easily create git server and make one/many Git repositories available for clone/fetch/push through the standardgit(over http) commands.@fastify-userland/request-idFastify Request ID Plugin@fastify-userland/typeorm-query-runnerFastify typeorm QueryRunner plugin@gquittet/graceful-serverTiny (~5k), Fast, KISS, and dependency-free Node.js library to make your Fastify API graceful.@h4ad/serverless-adapterRun REST APIs and other web applications using your existing Node.js application framework (Express, Koa, Hapi and Fastify), on top of AWS Lambda, Huawei and many other clouds.@immobiliarelabs/fastify-metricsMinimalistic and opinionated plugin that collects usage/process metrics and dispatches to statsd.@immobiliarelabs/fastify-sentrySentry errors handler that just works! Install, add your DSN and you're good to go! A plugin to implement Lyra search engine on Fastify@joggr/fastify-prismaA plugin for accessing an instantiated PrismaClient on your server.@mgcrea/fastify-graceful-exitA plugin to close the server gracefully@mgcrea/fastify-request-loggerA plugin to enable compact request logging for Fastify@mgcrea/fastify-sessionSession plugin for Fastify that supports both stateless and stateful sessions@mgcrea/fastify-session-redis-storeRedis store for @mgcrea/fastify-session using ioredis@mgcrea/fastify-session-sodium-cryptoFast sodium-based crypto for @mgcrea/fastify-session@mgcrea/pino-pretty-compactA custom compact pino-base prettifier@pybot/fastify-autoloadPlugin to generate routes automatically with valid json content@scalar/fastify-api-referenceBeautiful OpenAPI/Swagger API references for Fastify@trubavuong/fastify-seaweedfsSeaweedFS for FastifyapitallyFastify plugin to integrate with Apitally, a simple API monitoring & API key management solution.areciboFastify ping responder for Kubernetes Liveness and Readiness Probes.aws-xray-sdk-fastifyA Fastify plugin to log requests and subsegments through AWSXray.cls-rtracerFastify middleware for CLS-based request ID generation. An out-of-the-box solution for adding request IDs into your logs.electron-serverA plugin for using Fastify without the need of consuming a port on Electron apps.fast-waterA Fastify plugin for waterline. Decorates Fastify with waterline models.fastify-204Fastify plugin that return 204 status on empty response.fastify-405Fastify plugin that adds 405 HTTP status to your routesfastify-allowFastify plugin that automatically adds an Allow header to responses with routes. Also sends 405 responses for routes that have a handler but not for the request's method.fastify-amqpFastify AMQP connection plugin, to use with RabbitMQ or another connector. Just a wrapper toamqplib.fastify-amqp-asyncFastify AMQP plugin with a Promise-based API provided byamqplib-as-promised.fastify-angular-universalAngular server-side rendering support using@angular/platform-serverfor Fastifyfastify-api-keyFastify plugin to authenticate HTTP requests based on API key and signaturefastify-appwriteFastify Plugin for interacting with Appwrite server.fastify-asyncforgePlugin to access Fastify instance, logger, request and reply from Node.js Async Local Storage.fastify-at-mysqlFastify MySQL plugin with auto SQL injection attack prevention.fastify-at-postgresFastify Postgres plugin with auto SQL injection attack prevention.fastify-auth0-verify: Auth0 verification plugin for Fastify, internally uses fastify-jwt and jsonwebtoken.fastify-autocrudPlugin to auto-generate CRUD routes as fast as possible.fastify-autoroutesPlugin to scan and load routes based on filesystem path from a custom directory.fastify-aws-snsFastify plugin for AWS Simple Notification Service (AWS SNS) that coordinates and manages the delivery or sending of messages to subscribing endpoints or clients.fastify-aws-timestreamFastify plugin for managing databases, tables, and querying and creating scheduled queries with AWS Timestream.fastify-axiosPlugin to send HTTP requests via axios.fastify-babelFastify plugin for development servers that require Babel transformations of JavaScript sources.fastify-bcryptA Bcrypt hash generator & checker.fastify-better-sqlite3Plugin for better-sqlite3.fastify-blippPrints your routes to the console, so you definitely know which endpoints are available.fastify-bookshelfFastify plugin to add bookshelf.js ORM support.fastify-boomFastify plugin to add boom support.fastify-breeFastify plugin to add bree support.fastify-bugsnagFastify plugin to add support for Bugsnag error reporting.fastify-cachemanSmall and efficient cache provider for Node.js with In-memory, File, Redis and MongoDB engines for Fastifyfastify-casbinCasbin support for Fastify.fastify-casbin-restCasbin support for Fastify based on a RESTful model.fastify-caslFastify CASL plugin that supports ACL-like protection of endpoints via either a preSerialization & preHandler hook, sanitizing the inputs and outputs of your application based on user rights.fastify-cloudeventsFastify plugin to generate and forward Fastify events in the Cloudevents format.fastify-cloudflare-turnstileFastify plugin for CloudFlare Turnstile.fastify-cloudinaryPlugin to share a common Cloudinary connection across Fastify.fastify-cockroachdbFastify plugin to connect to a CockroachDB PostgreSQL instance via the Sequelize ORM.fastify-constraintsFastify plugin to add constraints to multiple routesfastify-couchdbFastify plugin to add CouchDB support via nano.fastify-crud-generatorA plugin to rapidly generate CRUD routes for any entity.fastify-custom-healthcheckFastify plugin to add health route in your server that asserts custom functions.fastify-decoratorsFastify plugin that provides the set of TypeScript decorators.fastify-delay-requestFastify plugin that allows requests to be delayed whilst a task the response is dependent on is run, such as a resource intensive process.fastify-disablecacheFastify plugin to disable client-side caching, inspired by nocache.fastify-dynamodbAWS DynamoDB plugin for Fastify. It exposes AWS.DynamoDB.DocumentClient() object.fastify-dynaregDynamic plugin register for Fastify.fastify-envalidFastify plugin to integrate envalid in your Fastify project.fastify-error-pageFastify plugin to print errors in structured HTML to the browser.fastify-essoThe easiest authentication plugin for Fastify, with built-in support for Single sign-on (and great documentation).fastify-event-busEvent bus support for Fastify. Built upon js-event-bus.fastify-evervaultFastify plugin for instantiating and encapsulating the Evervault client.fastify-explorerGet control of your decorators across all the encapsulated contexts.fastify-faviconFastify plugin to serve default favicon.fastify-feature-flagsFastify feature flags plugin with multiple providers support (e.g. env, config, unleash).fastify-file-routesGet Next.js based file system routing into fastify.fastify-file-uploadFastify plugin for uploading files.fastify-firebaseFastify plugin for Firebase Admin SDK to Fastify so you can easily use Firebase Auth, Firestore, Cloud Storage, Cloud Messaging, and more.fastify-firebase-authFirebase Authentication for Fastify supporting all of the methods relating to the authentication API.fastify-formidableHandy plugin to provide multipart support and fastify-swagger integration.fastify-gcloud-traceGoogle Cloud Trace API Connector for Fastify.fastify-get-headSmall plugin to set a new HEAD route handler for each GET route previously registered in Fastify.fastify-get-onlySmall plugin used to make fastify accept only GET requestsfastify-good-sessionsA good Fastify sessions plugin focused on speed.fastify-google-cloud-storageFastify plugin that exposes a GCP Cloud Storage client instance.fastify-graceful-shutdownShutdown Fastify gracefully and asynchronously.fastify-grantAuthentication/Authorization plugin for Fastify that supports 200+ OAuth Providers.fastify-guardA Fastify plugin that protects endpoints by checking authenticated user roles and/or scopes.fastify-hanaconnects your application toSAP-HANA.fastify-hashidsA Fastify plugin to encode/decode IDs using hashids.fastify-hasuraA Fastify plugin to have fun with Hasura.fastify-healthcheckFastify plugin to serve a health check route and a probe script.fastify-hemeraFastify Hemera plugin, for writing reliable & fault-tolerant microservices with nats.io.fastify-hl7A Fastify Plugin to create a server, build, and send HL7 formatted Hl7 messages. Using node-hl7-client and node-hl7-server as the underlining technology to do this.fastify-http-clientPlugin to send HTTP(s) requests. Built upon urllib.fastify-http-contextFastify plugin for "simulating" a thread of execution to allow for true HTTP context to take place per API call within the Fastify lifecycle of calls.fastify-http-errors-enhancedAn error handling plugin for Fastify that uses enhanced HTTP errors.fastify-http2httpsRedirect HTTP requests to HTTPS, both using the same port number, or different response on HTTP and HTTPS.fastify-https-alwaysLightweight, proxy-aware redirect plugin from HTTP to HTTPS.fastify-https-redirectFastify plugin for auto-redirect from HTTP to HTTPS.fastify-i18nInternationalization plugin for Fastify. Built upon node-polyglot.fastify-impressionsFastify plugin to track impressions of all the routes.fastify-influxdbFastify InfluxDB plugin connecting to an InfluxDB instance via the Influx default package.fastify-ipA plugin for Fastify that allows you to infer a request ID by a given set of custom Request headers.fastify-json-to-xmlFastify plugin to serialize JSON responses into XML.fastify-jwt-authzJWT user scope verifier.fastify-jwt-webappJWT authentication for Fastify-based web apps.fastify-kafkajsFastify plugin that adds support for KafkaJS - a modern Apache Kafka client library.fastify-keycloak-adapterA keycloak adapter for a Fastify app.fastify-knexjsFastify plugin for supporting KnexJS Query Builder.fastify-knexjs-mockFastify Mock KnexJS for testing support.fastify-koaConvert Koa middlewares into Fastify pluginsfastify-kubernetesFastify Kubernetes client plugin.fastify-kyselyFastify plugin for supporting Kysely type-safe query builder.fastify-language-parserFastify plugin to parse request language.fastify-lcacheLightweight cache pluginfastify-list-routesA simple plugin for Fastify to list all available routes.fastify-loaderLoad routes from a directory and inject the Fastify instance in each file.fastify-log-controllerchanges the log level of your Fastify server at runtime.fastify-luredPlugin to load lua scripts with fastify-redis and lured. A plugin to implement Lyra search engine on Fastify.fastify-mailerPlugin to initialize and encapsulate Nodemailer's transporters instances in Fastify.fastify-markdownPlugin to markdown support.fastify-method-overridePlugin for Fastify, which allows the use of HTTP verbs, such as DELETE, PATCH, HEAD, PUT, OPTIONS in case the client doesn't support them.fastify-metricsPlugin for exporting Prometheus metrics.fastify-minifyPlugin for minification and transformation of responses.fastify-mongo-memoryFastify MongoDB in Memory Plugin for testing support.fastify-mongodb-sanitizerFastify plugin that sanitizes client input to prevent potential MongoDB query injection attacks.fastify-mongoose-apiFastify plugin to create REST API methods based on Mongoose MongoDB models.fastify-mongoose-driverFastify Mongoose plugin that connects to a MongoDB via the Mongoose plugin with support for Models.fastify-mqttPlugin to share mqtt client across Fastify.fastify-msgpackFastify and MessagePack, together at last. Uses @msgpack/msgpack by default.fastify-msgraph-webhookto manage MS Graph Change Notifications webhooks.fastify-multerMulter is a plugin for handling multipart/form-data, which is primarily used for uploading files.fastify-natsPlugin to share NATS client across Fastify.fastify-next-authNextAuth.js plugin for Fastify.fastify-no-additional-propertiesAddadditionalProperties: falseby default to your JSON Schemas.fastify-no-iconPlugin to eliminate thrown errors for/favicon.icorequests.fastify-normalize-request-replyPlugin to normalize the request and reply to the Express version 4.x request and response, which allows use of middleware, like swagger-stats, that was originally written for Express.fastify-nowStructure your endpoints in a folder and load them dynamically with Fastify.fastify-nuxtjsVue server-side rendering support for Fastify with Nuxt.js Framework.fastify-oasGenerates OpenAPI 3.0+ documentation from routes schemas for Fastify.fastify-objectionjsPlugin for the Fastify framework that provides integration with objectionjs ORM.fastify-objectionjs-classesPlugin to cherry-pick classes from objectionjs ORM.fastify-opaque-apakeA Fastify plugin to implement the OPAQUE aPAKE protocol. Uses @squirrelchat/opaque-wasm-server.fastify-openapi-docsA Fastify plugin that generates OpenAPI spec automatically.fastify-openapi-glueGlue for OpenAPI specifications in Fastify, autogenerates routes based on an OpenAPI Specification.fastify-opentelemetryA Fastify plugin that uses the OpenTelemetry API to provide request tracing.fastify-oracleAttaches anoracledbconnection pool to a Fastify server instance.fastify-oramafastify-orientdbFastify OrientDB connection plugin, with which you can share the OrientDB connection across every part of your server.fastify-osmFastify OSM plugin to run overpass queries by OpenStreetMap.fastify-overrideFastify plugin to override decorators, plugins and hooks for testing purposesfastify-peekabooFastify plugin for memoize responses by expressive settings.fastify-piscinaA worker thread pool plugin using Piscina.fastify-polyglotA plugin to handle i18n using node-polyglot.fastify-postgraphilePlugin to integrate PostGraphile in a Fastify project.fastify-postgres-dot-jsFastify PostgreSQL connection plugin that uses Postgres.js.fastify-prettierA Fastify plugin that uses prettier under the hood to beautify outgoing responses and/or other things in the Fastify server.fastify-print-routesA Fastify plugin that prints all available routes.fastify-protobufjsFastify and protobufjs, together at last. Uses protobufjs by default.fastify-qrcodeThis plugin utilizes qrcode to generate QR Code.fastify-qsA plugin for Fastify that adds support for parsing URL query parameters with qs.fastify-rabbitmqFastify RabbitMQ plugin that uses node-rabbitmq-client plugin as a wrapper.fastify-racingFastify's plugin that adds support to handle an aborted request asynchronous.fastify-ravendbRavenDB connection plugin. It exposes the sameDocumentStore(or multiple ones) across the whole Fastify application.fastify-raw-bodyAdd therequest.rawBodyfield.fastify-rbacFastify role-based access control plugin.fastify-recaptchaFastify plugin for reCAPTCHA verification.fastify-redis-channelsA plugin for fast, reliable, and scalable channels implementation based on Redis streams.fastify-redis-sessionRedis Session plugin for fastify.fastify-register-routesPlugin to automatically load routes from a specified path and optionally limit loaded file names by a regular expression.fastify-response-cachingA Fastify plugin for caching the response.fastify-response-timeAddX-Response-Timeheader at each request for Fastify, in milliseconds.fastify-restyFastify-based web framework with REST API routes auto-generation for TypeORM entities using DI and decorators.fastify-reverse-routesFastify reverse routes plugin, allows to defined named routes and build path using name and parameters.fastify-rob-configFastify Rob-Config integration.fastify-route-groupConvenient grouping and inheritance of routes.fastify-s3-bucketsEnsure the existence of defined S3 buckets on the application startup.fastify-schema-constraintChoose the JSON schema to use based on request parameters.fastify-schema-to-typescriptGenerate typescript types based on your JSON/YAML validation schemas so they are always in sync.fastify-sentryFastify plugin to add the Sentry SDK error handler to requests.fastify-sequelizeFastify plugin work with Sequelize (adapter for Node.js -> Sqlite, Mysql, Mssql, Postgres).fastify-server-sessionA session plugin with support for arbitrary backing caches viafastify-caching.fastify-shared-schemaPlugin for sharing schemas between different routes.fastify-slonikFastify Slonik plugin, with this you can use slonik in every part of your server.fastify-slow-downA plugin to delay the response from the server.fastify-socket.ioa Socket.io plugin for Fastify.fastify-split-validatorSmall plugin to allow you use multiple validators in one route based on each HTTP part of the request.fastify-sqliteconnects your application to a sqlite3 database.fastify-sqlite-typedconnects your application to a SQLite database with full Typescript support.fastify-sseto provide Server-Sent Events withreply.sse( … )to Fastify.fastify-sse-v2to provide Server-Sent Events using Async Iterators (supports newer versions of Fastify).fastify-ssr-viteA simple plugin for setting up server side rendering with vite.fastify-stripePlugin to initialize and encapsulate Stripe Node.js instances in Fastify.fastify-supabasePlugin to initialize and encapsulate Supabase instances in Fastify.fastify-tls-keygenAutomatically generate a browser-compatible, trusted, self-signed, localhost-only, TLS certificate.fastify-tokenizeTokenize plugin for Fastify that removes the pain of managing authentication tokens, with built-in integration forfastify-auth.fastify-totpA plugin to handle TOTP (e.g. for 2FA).fastify-twitch-ebs-toolsUseful functions for Twitch Extension Backend Services (EBS).fastify-type-provider-effect-schemaFastify type provider for @effect/schema.fastify-type-provider-zodFastify type provider for zod.fastify-typeorm-pluginFastify plugin to work with TypeORM.fastify-user-agentparses your request'suser-agentheader.fastify-uwsA Fastify plugin to use the web server uWebSockets.js.fastify-vhostProxy subdomain HTTP requests to another server (useful if you want to point multiple subdomains to the same IP address, while running different servers on the same machine).fastify-viteVite plugin for Fastify with SSR data support.fastify-vue-pluginNuxt.js plugin for Fastify. Control the routes nuxt should use.fastify-wamp-routerWeb Application Messaging Protocol router for Fastify.fastify-web-responseEnables returning web streams objectsResponseandReadableStreamin routes.fastify-webpack-hmrWebpack hot module reloading plugin for Fastify.fastify-webpack-hotWebpack Hot Module Replacement for Fastify.fastify-wsWebSocket integration for Fastify — with support for WebSocket lifecycle hooks instead of a single handler function. Built upon ws and uws.fastify-xml-body-parserParse XML payload / request body into JS / JSON object.http-wizardExports a typescript API client for your Fastify API and ensures fullstack type safety for your project.i18next-http-middlewareAn i18next based i18n (internationalization) middleware to be used with Node.js web frameworks like Express or Fastify and also for Deno.k-fastify-gatewayAPI Gateway plugin for Fastify, a low footprint implementation that uses thefastify-reply-fromHTTP proxy library.mercuriusA fully-featured and performant GraphQL server implementation for Fastify.nstatsA fast and compact way to get all your network and process stats for your node application. Websocket, HTTP/S, and prometheus compatible!oas-fastifyOAS 3.x to Fastify routes automation. Automatically generates route handlers with fastify configuration and validation.openapi-validator-middlewareSwagger and OpenAPI 3.0 spec-based request validation middleware that supports Fastify.pubsub-http-handlerA Fastify plugin to easily create Google Cloud PubSub endpoints.sequelize-fastifyA simple and lightweight Sequelize plugin for Fastify.typeorm-fastify-pluginA simple and updated Typeorm plugin for use with Fastify.
Community Tools
@fastify-userland/workflowsReusable workflows for use in the Fastify pluginfast-makerroute configuration generator by directory structure.fastify-fluxTool for building Fastify APIs using decorators and convert Typescript interface to JSON Schema.simple-tjscliCLI tool to generate JSON Schema from TypeScript interfaces.vite-plugin-fastifyFastify plugin for Vite with Hot-module Replacement.vite-plugin-fastify-routesFile-based routing for Fastify applications using Vite.