chav

0.0.1 • Public • Published

Chav

Sometimes in life you just want to serve static json content as an API route.

chav is a hapi.js plugin to serve a static json file as an API route. Per default the file under static/static.json is served as GET /statics

Installation

npm install --save chav

Usage

As long as you don't provide any options, we'll assume that the file you want to be served is called static.json and is located in the static folder of your app. The /static route is not protected. These are the defaults we're using. If you want to override the servable or the path just provide your options on plugin registration.

const defaults = {
  servable: 'static/static.json',
  path: '/statics',
  tags: ['static', 'route'],
  description: 'Renders static route defined in a file',
  responses: {
    statusCode: 400,
    message: 'No static routes found'
  },
  auth: false
};

You can override servable, path, tags and description.

When you register your plugin with e.g. glue:

{
  "plugin": {
    "register": "chav",
    "options": {
                 "servable" : "static/foobar.json"
               }
  }
}

TODOs

  • Whenever the json file has more than one array (see example below), try to also offer the /statics/beers and /statics/snacks routes
{
  "beers" : [

  ],
  "snacks" : [

  ]
}
  • Check if the servable is actually a file or a directory and if it's a directory serve every file as an API route, e.g. file name is a route name.

Readme

Keywords

Package Sidebar

Install

npm i chav

Weekly Downloads

1

Version

0.0.1

License

MIT

Last publish

Collaborators

  • igorkosta