fastify-router

1.1.0 • Public • Published

fastify-router

Build Status Code Climate Test Coverage Dependency Status devDependency Status

Simple fastify router.

Install

$ npm install fastify-router

Example

const fastify = require('fastify')();
const fastifyRouter = require('fastify-router');
 
fastify.register(fastifyRouter);
 
const Router = fastify.Router;
 
const example = [
  { // Router
    prefix: '/home',
    routes: [
      { // Route /
        method: 'GET',
        url: '/',
        schema: {
          response: {
            200: { type: 'string' },
          },
        },
        handler: (request, reply) => reply.view('/example.pug'),
      },
    ],
  },
  { // Router
    prefix: '/users',
    routes: [
      { // Route /users/
        method: 'GET',
        url: '/',
        schema: {
          response: {
            200: {
              type: 'object',
              properties: [{
                name: { type: 'string' },
              }],
            },
          },
        },
        handler: (request, reply) => reply.send([{ name: 'Example' }]),
      },
      { // Route /users/:id
        method: 'GET',
        url: '/:id',
        schema: {
          response: {
            200: {
              type: 'object',
              properties: {
                name: { type: 'string' },
              },
            },
          },
        },
        handler: (request, reply) => reply.send({ name: 'Example' }),
      },
    ],
    routers: [
      { // Router
        prefix: '/register',
        routes: [
          { // Route /users/register
            method: 'POST',
            url: '/',
            schema: {
              response: {
                200: {
                  type: 'object',
                  properties: {
                    name: { type: 'string' },
                  },
                },
              },
            },
            handler: (request, reply) => reply.send({ name: 'Example' }),
          },
        ],
      },
    ],
  },
];
 
Router.route(example);

Readme

Keywords

none

Package Sidebar

Install

npm i fastify-router

Weekly Downloads

1

Version

1.1.0

License

BSD-3-Clause

Last publish

Collaborators

  • rodrigogs