A rich framework for building applications and services

hapi enables developers to focus on writing reusable application logic instead of spending time building infrastructure.

$ npm install hapi

Current version: 17.2.0 ● Latest update: 2018-02-20T15:47:16Z ● Downloads last month: 710,875


hapi's stability and reliability is empowering these companies today:

See more

Are you using hapi too? Let us know.

Visit us on IRC in #hapi on freenode.

Join us on Slack at hapihour.slack.com (First time? Join here).

Getting started

Start by creating a package.json:

npm init

Install hapi and save it to your package.json dependencies:

npm install hapi --save

Create aserver.js file with the following contents:

'use strict';

const Hapi = require('hapi');

// Create a server with a host and port
const server = Hapi.server({
host: 'localhost', port: 8000 });

// Add the route
server.route({ method: 'GET', path:'/hello', handler: function (request, h) {

return 'hello world'; } });

// Start the server
async function start() {

try {
await server.start();
catch (err) { console.log(err); process.exit(1); }

console.log('Server running at:', server.info.uri); };


Launch the application by running npm start and open localhost:8000/hello in your browser.

Read more about getting started with hapi