hapi-auth
v1.0.1
Published
A Complete Login Solution for Hapi.js Apps/APIs
Downloads
27
Maintainers
Readme
Hapi Login
A Complete Login Solution for Hapi.js Apps/APIs to get you up and running in the next 5 minutes.
Why?
Letting people login to your App/API is essential any time there is personalized content/functionality to display.
We needed a easy way of doing Login/Authentication for our projects that we could drop into any project and be up-and running in minutes and thus avoid people re-inventing the wheel too often.
After much research and investigation, we decided to use a few existing Hapi modules together to form a re-useable starter package.
What?
Login for Hapi Apps/APIs which gives you a set of routes and a predictable usage pattern.
Tested
Our objective is to extensively test every aspect of this package so that we can rely on the package for our high-traffic/security projects.
If you spot any area for improvement, please create an issue: https://github.com/dwyl/hapi-login/issues so we can discuss!
How?
As the name suggests, this plugin is built for apps built with the Hapi.js web framework.
If you or anyone on your team are new to Hapi, we
have an introductory tutorial: https://github.com/nelsonic/learn-hapi
Basic Login
If all you need is the ability to let people login to your app/website using an email/username and password, see: https://github.com/dwyl/hapi-login
Google Auth
We are using the Googles to let people sign into our App(s) @dwylhq because we all use Gmail and Google Calendar personally, so it makes sense.
To enable Google Auth you will need to have two Environment Variables set:
GOOGLE_CLIENT_ID=YourAppsClientId.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=SuperSecret
You will need to create an App on https://console.developers.google.com
and get your CLIENT_ID
& CLIENT_SECRET
.
We export these two variables prefixed with GOOGLE_
to distinguish them from other services.
Dependencies
google-api-nodejs-client - handles authentication with Google and access to other Google Services.
hapi-auth-jwt2 - lets us track the session for people who have logged in and identify (authorise) people returning to the site/app using a JSON Web Token
bell - Facebook, Twitter & LinkedIn Authentication
Research
Further Reading
If you want to learn more about the dwyl technology stack and how this module fits into it, please see: https://github.com/dwyl/technology-stack
Google Authentication
visit: https://console.developers.google.com to get started
Recommended Reading
- Introduction to OAuth2: https://www.digitalocean.com/community/tutorials/an-introduction-to-oauth-2