A simple pagination for hapijs responses
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
test
.gitignore
.travis.yml
README.md
index.js
package.json

README.md

hapi-paginate

npm version Build Status

A basic pagination plugin for Hapi.

The plugin listens to page and limit query parameters and add them to request object.

The Hapi app should decide how to handle request.page and request.limit values.

The plugin then adds a meta key to the output json response and move the response under results key.

To limit the plugin to specific routes, adds routes to options.

Example

curl -X GET http://www.example.com?page=3&limit=100

{
    "meta": {
        "page": 3,
        "limit": 100
    },
    "results": {
        "key": "value"
    }
}

Installation

$: npm install hapi-paginate

Registration

var Hapi = require('hapi');

var hapi = new Hapi.Server();
hapi.connection();

hapi.register({
  register: require('hapi-paginate'),
  options: {
    limit: 1000,
    name: 'My Meta',
    results: 'output',
    routes: ['/', '/api']
  }
};

Test

$ npm test