2.4.2 • Published 10 years ago

docpad-plugin-hapi v2.4.2

Weekly downloads
107
License
-
Repository
github
Last release
10 years ago

Hapi Server Plugin for DocPad

A fully customizable Hapi server for docpad.

Usage (more coming soon)

In docpad.coffee or docpad.js, you can directly add routes as specified in Hapi Documentation

Hapi plugins can easily be loaded. Plugins can access docpad through server.app.docpad. For example, to get docpad configuration, server.app.docpad.getConfig() or in the router request.server.app.docpad.getConfig()

Also, server configuration can be overriden with the 'config' key

# Require Joi for route validation
Joi = require('joi');

# Docpad Configuration Object
module.exports = {
    plugins:
        hapi:
            # router
            routes: [
                {
                    method: 'POST'
                    path: '/test'
                    handler: (request, reply) ->
                        reply('test');
                    config:
                        validate:
                            payload:
                                test: Joi.string().min(3).max(8)
                },
                {
                    method: 'PUT'
                    path: '/hello'
                    handler: (request, reply) ->
                        reply('hello');
                }
            ]
            # server plugins
            plugins: [
                {
                    good:
                        require: 'good',
                        options:
                            subscribers:
                                console: ['request', 'log', 'error']
                },
                {
                    yar:
                        require: 'yar',
                        options:
                            cookieOptions:
                                password: 'password'
                },
                    customPlugin:
                        require: './lib/customPlugin',
                        options:
                            cookieOptions:
                                password: 'password'
            ]
            # server config
            config:
                maxSockets: 2000
            # clean urls
            defaultExtension: 'html' # default value. Specify another extension if desired.

Clean URLs

Clean URLs are enabled by default for files with .html extension. To change Clean URL extension, set plugin settings property "defaultExtension"

Deploying to Heroku or other Cloud Hosting

Change Procfile to

web: node_modules/docpad-plugin-hapi/bin/docpad-hapi-server

Running with pm2 or forever

forever start node_modules/docpad-plugin-hapi/lib/bin/docpad-hapi-server.js

License

Licensed under the incredibly permissive MIT License

2.4.2

10 years ago

2.4.0

10 years ago

2.3.12

10 years ago

2.3.11

10 years ago

2.3.10

10 years ago

2.3.9

10 years ago

2.3.8

10 years ago

2.3.7

10 years ago

2.3.6

10 years ago

2.3.5

10 years ago

2.3.4

10 years ago

2.3.3

10 years ago

2.3.2

10 years ago

2.3.1

10 years ago

2.3.0

10 years ago

2.2.6

10 years ago

2.2.5

10 years ago

2.2.4

10 years ago

2.2.3

10 years ago

2.2.2

10 years ago

2.2.1

10 years ago

2.2.0

10 years ago

2.1.1

10 years ago

2.1.0

10 years ago

2.0.13

10 years ago

2.0.12

10 years ago

2.0.11

10 years ago

2.0.10

10 years ago

2.0.9

10 years ago

2.0.8

10 years ago

2.0.7

10 years ago

2.0.6

10 years ago

2.0.5

10 years ago

2.0.3

10 years ago

2.0.1

10 years ago