Hapi Trailpack. This pack binds the routes compiled in trailpack-router to a Hapi Server.
Load in your trailpack config.
// config/trailpack.js
module.exports = {
// ...
packs: [
require('trailpack-core'),
require('trailpack-router'),
require('trailpack-hapi')
]
}
Choose a template engine.
// config/views.js
module.exports = {
engine: 'handlebars'
}
Then simply write your views in a directory called 'templates'!
This feature has been tested with Jade and Handlebars. TODO: Put this in yeoman?
See config/web.js
for an example.
The port to listen on. 3000
by default. Can also be set via the PORT
environment variable.
Register your hapi plugins by adding them to the web.js config in typical Hapi plugin format. See: http://hapijs.com/tutorials/plugins#loading-a-plugin
// config/web.js
module.exports = {
plugins: [
{
register: require('vision'),
options: { }
},
{
register: require('inert'),
options: { }
},
// ...
]
}
// config/web.js
module.exports = {
views: {
engines: {
html: require('some-view-engine')
},
path: 'views'
}
}
The Hapi server lives on the Trails global object at app.packs.hapi.server
.
We love contributions! In order to be able to review your code efficiently, please keep the following in mind:
- Pull Requests (PRs) must include new and/or updated tests, and all tests must pass.
- Use
eslint
! See theeslintConfig
in package.json. - Please reference the relevant issue in your Pull Request.