Product
Introducing SSO
Streamline your login process and enhance security by enabling Single Sign-On (SSO) on the Socket platform, now available for all customers on the Enterprise plan, supporting 20+ identity providers.
fastify-print-routes
Advanced tools
Changelog
2024-04-12 / 3.2.0
Readme
A simple plugin for Fastify prints all available routes.
http://sw.cowtech.it/fastify-print-routes
Just run:
npm install fastify-print-routes --save
Register as a plugin as early as possible, optional providing any of the following options:
useColors
: If to use colors to highlight routes.compact
: If to show all routes of the same path in a single line even if they are defined using different handlers. Descripion of unified routes will not be printed.filter
: If provided, a function that receives a route and should return a boolean to determine if the route should be print or not.querystring
: If to include querystrings in the URLs.Routes can also be omitted by the list by setting hide
option to true
inside their config
.
Once the server is started, it will print on the console all available routes and methods.
import fastify from 'fastify'
import fastifyPrintRoutes from 'fastify-print-routes'
const server = fastify()
/*
Since fastify-print-routes uses an onRoute hook, you have to either:
* use `await register...`
* wrap you routes definitions in a plugin
See: https://www.fastify.io/docs/latest/Guides/Migration-Guide-V4/#synchronous-route-definitions
*/
await server.register(fastifyPrintRoutes)
server.get('/path1', {
async handler() {
return { ok: true }
}
})
server.route({
url: '/path2/:params',
method: ['POST', 'GET'],
async handler() {
return { ok: true }
},
config: {
description: 'Title'
}
})
server.route({
url: '/path3',
method: ['POST', 'GET'],
async handler() {
return { ok: true }
},
config: {
hide: true
}
})
server.listen({ port: 3000 }, () => {
console.log(`Server listening on port ${server.server.address().port} ...`)
})
Once started, this will be printed to the console:
Available routes:
╔════════════╤════════════════╤═════════════╗
║ Method(s) │ Path │ Description ║
╟────────────┼────────────────┼─────────────╢
║ GET │ /path1 │ ║
║ HEAD │ /path1 │ ║
║ GET | POST │ /path2/:params │ Title ║
╚════════════╧════════════════╧═════════════╝
Server listening on port 60792 ...
This package only supports to be directly imported in a ESM context.
For informations on how to use it in a CommonJS context, please check this page.
Copyright (C) 2020 and above Shogun (shogun@cowtech.it).
Licensed under the ISC license, which can be found at https://choosealicense.com/licenses/isc.
FAQs
A simple plugin for Fastify prints all available routes.
The npm package fastify-print-routes receives a total of 68,500 weekly downloads. As such, fastify-print-routes popularity was classified as popular.
We found that fastify-print-routes demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Streamline your login process and enhance security by enabling Single Sign-On (SSO) on the Socket platform, now available for all customers on the Enterprise plan, supporting 20+ identity providers.
Security News
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
Security News
As cyber threats become more autonomous, AI-powered defenses are crucial for businesses to stay ahead of attackers who can exploit software vulnerabilities at scale.