3.8 out of 5
3.8
27 reviews on Udemy

NodeJs: Building REST APIS With HapiJs

The complete guide to build Rest Apis with Hapijs And Mongoose
Instructor:
Haider Malik
4,119 students enrolled
English [Auto-generated]
Build highly scalable REST APIS with HapiJs and Mongoose
Build APIS for any kind of Applicaitons(Mobile, Web Apps)
Learn the best practices to create REST API

What’s this course about?

Learn how to build rest APIs with HapiJs and Mongoose. I will teach you how to learn code by doing. You will solve real-world problem with HapiJs and Mongoose. At the end of this course, you will build APIS in HapiJs. You will be able to create APIS for any web application, e-commerce, recruitment platform, content management system, etc.

More details, please!

Javascript runs everywhere. You can build modern web applications by using Javascript. Nodejs is a very efficient approach to develop your backend application. All the Highly successful companies are using Nodejs in production. Some of them are: 

Paypal
Netflix
LinkedIn
Walmart
Microsoft

There are many frameworks in Nodejs some of them are:

Express
Sails
Loopback

Why you should learn HapiJs

Walmart Labs developed HapiJs. Walmart is using this framework in production level. HapiJs is built on the top of the ExpressJs framework. Express is a very minimalistic framework. You can make highly scalable web APIs in HapiJs. Walmart tested the HapiJs framework on Black Friday. They got a beneficial response. Paypal is also using HapiJs.

One of the best features of HapiJs provides plugins. You can extend the Hapi Application by using HapiJs. Plugins also allow you to divide your applications into modules. There are many useful plugins available to document your rest APIs in HapiJs

What’s the course?

What is HapiJs
Why you should use HapiJs
Why HapiJs is an excellent choice for building APIS
Learn Building Blocks of HapiJs
Learn how to create APIS
Learn how to connect HapiJs Application to MongoDB
Learn how to use Hapi Application to Mongoose
Learn the best practices to handler Errors in Hapi
Learn the validations in HapiJs
How to use Plugins
How to extend server functionality by using external plugins
How to create your own custom plugin
How to divide or modularize application with the help of plugins
Learn how to create relationship between models
Learn how to add one to many relationships in Mongoose
Learn how to implement many to many relationships in Mongoose
Understanding how to apply JWT authentication in HapiJs
Learn how to secure your routes using jwt scheme
Learn how to do logging in Hapi Application

Introduction

1
What is HapiJs

In this video, I will introduce you to the Hapijs framework.

2
Why You Should Use HapiJs

You will learn why you should use Hapijs in the your project

3
Who Is Using HapiJs

You will learn who is using HapiJs

4
Getting Setup

Make sure you install Nodejs and MongoDB on your machine

5
Building Blocks Of HapiJs

You will learn what are the main building blocks of HapiJs. I will show you the big picture of HapiJs

Building APIS

1
API Endpoints

I will show you the API Endpoints that we are going to build in this module

2
Http Response Status Code

You will learn Http status code to represent the response

3
Creating New Server

You will learn how to create new server in hapijs

4
Creating routes in Hapijs

You will learn how to add routing in hapijs application

5
Connecting To MongoDB

I will teach you how to connect Hapi Application to mongoDB

6
Creating New Model

You will learn how to create your first model in Mongoose ORM

7
Creating New Company

You will learn how to save record in MongoDB

8
Find Companies

I will teach how to get all the records from MongoDB

9
Update Company By Id

You will learn how to update the record in MongoDB

10
Delete Company By Id

You will learn how to delete the record in MongoDB

11
Restructuring the App

I will teach you to restructure Hapi app into controllers, routes and models

12
Understanding Request LifeCycle

Validations

1
Introduction To Joi

In this video, I will introduce to the Joi package. You will learn how to apply validations in NodeJs by using Joi package

2
Validating Payload

You will learn how to apply validation on payload object by using Joi package

3
Validating Input Params

I will teach you how to validate Input params through Joi package

4
Validating Response

I will teach you how to validate Http response in Hapi Application

Plugins

1
Creating Custom Plugin

You will learn how to add custom plugin in HapiJs

2
Loading Multiple Plugins

I will teach you how to register multiple plugins in HapiJs

3
Adding Hapi-Swagger Plugin

You will learn how to include Hapi-swagger plugin in HapiJs. Hapi-swagger is used to add the documentation for REST Endpoints

4
Adding Documentation For Endpoints

I will teach you how to add documentation for REST Endpoints

5
Creating Mongoose Plugin

You will learn how to create a custom mongoose plugin in HapiJs

6
Restructuring App Into Modules

I will teach you how to modularize Hapi application into modules. You can convert Hapi application into multiple modules with the help of plugins

Adding Relationship Between Models

1
Introduction

You will learn the database shcema or database design of our demo application

2
Setup Application Module

You will learn how to create a new Application Module using Hapi custom plugins

3
Creating Jobs And Candidate Modules

You will learn how to create multiple modules in Hapi Application

4
Adding Company And Candidates Relation

You will learn how to add one to many relationship in Mongoose

5
Async/Await Demo

You will learn what is Async/Await and how can you use in your project

6
Moving To Asycn/Await

I will show you how to use Async/Await in Hapi Application

7
Populate Candidates With Companies

You will learn how to use populate in Mongoose

8
Populate Company with Candidates

Learn how to use populate in one to many relationship

9
Adding Relation With Company And Jobs

In this video, I will teach you how to add one to many relationship between company and jobs

10
Adding Relationship With Application

You will learn how to implement many to many relationship in mongoose

11
Find All Applications

You will learn how to fetch all the records including populate records

12
Refactoring Plugins Code

You will learn how to refactor the plugins code in developementjs file

Authentication

1
Understanding JWT Authentication Flow

You will learn what is jwt token based authentication. I will show you how can I implement in Hapi Application.

2
Creating User Module

I will teach you how to create new user module for authentication

3
Creating User Model

You will learn how to create a user model in mongoose

4
Creating Signup Route

I will teach you how to create a signup route for signup feature

5
Creating New User

You will learn how to create new user in MongoDB

6
Encrypting the User Password

You will learn how to encrypt the user password with bcrypt npm package

7
Error Handling With Boom

I will teach you how to include boom plugin to handle errors in hapiJs

8
Debugging Setup in Webstorm

You will learn how to debug the Hapi Application in webstorm

9
Debugging Setup in Visual Studio Code

Learn how to debug the Hapi Application in Visual Studio Code

10
Creating Login Route

I will teach you how to create a route for login method

11
Implementing Login

In this video, I will teach you how to get the user from the database on the based of user email and password

12
Comparing User Password

You will learn how to compare encrypted password with plain text password

13
Creating JSON Web Token

I will show you how to create JSON Web Token by using user login credentials. I will use thrid party npm package jsonwebtoken to generate a token

14
Debugging The Login Method

You will learn how login process work under the hood

15
Applying Authentication To All Routes

I will show you how to use hapi-jwt-auth2 package to implement token based authentication in Hapi

16
Adding Authorization Header

You will learn how to add authorization header in request. I will also show you how to access restricted routes in Hapi Application

17
Debugging The Authentication Process

You will how authentication works under the hood.

18
Adding Relation With User And Company

I will show you how to access the login credentials of current logged In user

19
Refactoring Configs

You will learn how to refactor configuration settings in development file

20
Refactoring Tags

Learn how to refactor tags in hapi-swagger

21
Logging In HapiJs

You will learn how to do logging in Hapi using good plugin

Bonus

1
Learn React and Redux by building real world application
You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
3.8
3.8 out of 5
27 Ratings

Detailed Rating

Stars 5
10
Stars 4
7
Stars 3
5
Stars 2
0
Stars 1
5
c226200d7e10837cf1d3a1b9aa214cc7
30-Day Money-Back Guarantee

Includes

4 hours on-demand video
3 articles
Full lifetime access
Access on mobile and TV
Certificate of Completion