<commit_before>---
layout: post
title: "Developing RESTful APIs with Hapi"
description: "Hapi 17 brings major changes to the server framework for Node.js. Learn what's new and how to build and secure RESTful APIs with Hapi"
date: 2017-12-11 8:30
category: Technical Guide, JavaScript, Hapi
banner:
  text: "Auth0 makes it easy to add authentication to your Angular application."
author:
  name: "<NAME>"
  url: "https://twitter.com/unicodeveloper"
  mail: "<EMAIL>"
  avatar: "https://en.gravatar.com/avatar/1097492785caf9ffeebffeb624202d8f?s=200"
design:
  image: https://cdn.auth0.com/blog/keystonejs/keystonejs-logo.png
  bg_color: "#4A4A4A"
tags:
- hapi
- hapijs
- javascript
- authentication
- auth
- nodejs
- restful
- api
related:
- 2017-09-19-building-an-app-with-Nette-and-adding-authentication
- 2017-09-07-developing-restful-apis-with-loopback
- 2017-08-10-implementing-jwt-authentication-on-spring-boot
---

**TL;DR:** In this tutorial, I'll show you how easy it is to build and secure an API with Hapi. Check out the [repo](https://github.com/auth0-blog/hapi-auth) to get the code.

---

**Hapi** is an open-source and rich Node.js framework created and actively maintained by [<NAME>](https://twitter.com/eranhammer). Hapi is a rich framework for building applications and services. It enables developers to focus on writing reusable application logic instead of spending time building infrastructure. 

Several organizations such as _Paypal_, _Vendigo_, _Clarify_, _Pling_, and _Npm_ already use **Hapi** in production. **Hapi** is a framework that gives you greater flexibility when compared to other Node.js frameworks. It is also perfect for grounds up development. The [documentation](https://hapijs.com/tutorials) is detailed, and there is a [vibrant](https://gitter.im/hapijs/hapi) [community](http://webchat.freenode.net/?channels=hapi) of users. Furthermore, there are dozens of [plugins](https://hapijs.com/plugins) for virtually any feature you are trying to build into your application.

{% include tweet_quote.html quote_text="Hapi is a framework that gives you greater flexibility when compared to other Node.js frameworks." %}

## Hapi Features
<commit_msg>Add a substantial related tag<commit_after>---
layout: post
title: "Developing RESTful APIs with Hapi"
description: "Hapi 17 brings major changes to the server framework for Node.js. Learn what's new and how to build and secure RESTful APIs with Hapi"
date: 2017-12-11 8:30
category: Technical Guide, JavaScript, Hapi
banner:
  text: "Auth0 makes it easy to add authentication to your Angular application."
author:
  name: "<NAME>"
  url: "https://twitter.com/unicodeveloper"
  mail: "<EMAIL>"
  avatar: "https://en.gravatar.com/avatar/1097492785caf9ffeebffeb624202d8f?s=200"
design:
  image: https://cdn.auth0.com/blog/keystonejs/keystonejs-logo.png
  bg_color: "#4A4A4A"
tags:
- hapi
- hapijs
- javascript
- authentication
- auth
- nodejs
- restful
- api
related:
- 2017-10-10-developing-web-apps-and-restful-apis-with-keystonejs
- 2017-09-07-developing-restful-apis-with-loopback
- 2017-08-10-implementing-jwt-authentication-on-spring-boot
---

**TL;DR:** In this tutorial, I'll show you how easy it is to build and secure an API with Hapi. Check out the [repo](https://github.com/auth0-blog/hapi-auth) to get the code.

---

**Hapi** is an open-source and rich Node.js framework created and actively maintained by [<NAME>](https://twitter.com/eranhammer). Hapi is a rich framework for building applications and services. It enables developers to focus on writing reusable application logic instead of spending time building infrastructure. 

Several organizations such as _Paypal_, _Vendigo_, _Clarify_, _Pling_, and _Npm_ already use **Hapi** in production. **Hapi** is a framework that gives you greater flexibility when compared to other Node.js frameworks. It is also perfect for grounds up development. The [documentation](https://hapijs.com/tutorials) is detailed, and there is a [vibrant](https://gitter.im/hapijs/hapi) [community](http://webchat.freenode.net/?channels=hapi) of users. Furthermore, there are dozens of [plugins](https://hapijs.com/plugins) for virtually any feature you are trying to build into your application.

{% include tweet_quote.html quote_text="Hapi is a framework that gives you greater flexibility when compared to other Node.js frameworks." %}

## Hapi Features

{'fraction_non_alphanumeric': 0.10619872379216044, 'fraction_numerical': 0.02917046490428441, 'mean_word_length': 4.634146341463414, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 16, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6078150', 'n_tokens_mistral': 1462, 'n_tokens_neox': 1324, 'n_words': 476}