4.55 out of 5
4.55
130 reviews on Udemy

Create Chatbot for Website with React and Node.js

Create a chatbot for webpage with React and Node.js. Teach chatbot to sell products, give recommendation, measure demand
Instructor:
Jana Bergant
1,002 students enrolled
English [Auto-generated]
have an intelligent chatbot build in a website
have a demo chatbot that they can tweak and suit to their needs

 In this course, you will build a chatbot for a Webpage. We’ll use Node.js and React for programming and GIT for deploying and version control. The bot will be hosted on Heroku, but you can simply hostedanywhere else where they support Node.js. We’ll use DialogFlow to process natural language, that is understand what users want. 

In the course, we’ll be building a sample chatbot. Its purpose is only to show you how things work. Our bot on the page will help us sell products. It will give recommendations and measure demand.

In the process of building this chatbot, you’ll learn all that is needed to build a great bot. To get the most out of the course you can work on this sample bot and at the end tweak it to suit your needs.

You need to have at least basic knowledge of Node.js and React to start with this course. For versioning we use GIT, therefore you need to be familiar at least with basic git commands.

To make it easier for you I’ve added git commits with changes to every video that has a change in the code. This way you can compare your code to mine. And you won’t lose time debugging. And remember for any questions I’m available in the Questions and answers. You are not alone.

And remember, I’LL BE THERE FOR YOU.

Bot will be able to remember things, that is store information into a database or connect to other API services. I’ll show you different implementations, so that you can play and find out what suits you most.

At the end of the course, you’ll have a demo chatbot that you can tweak and tailor to your needs.

My name is Jana Bergant and I’m a developer with over 20 years of experience. I’m an IT instructor teaching people new tech skills.  Over 12300 people are already taking my course.

I help all my students at every step of development. And I’ll be here for you!

Let me tell you a bit about every section of this course.

In the first section we’ll take an overview of the app and get familiar with tech stack, that is the technology used in this course. We’ll look at application architecture and different ways we can implement it. We’ll go through every implementation. And I’ll take you through the development stages.

Second section will introduce you to DialogFlow, natural language processor, that we’ll use to understand what our visitors want from the chatbot. We’ll go through building blocks of DialogFlow. You’ll learn about agents, intents, entities, parameters, prebuild agents and more.

Then in the third section, we start building the server side app for the chatbot. We’ll install Expresslibrary and generate express app. We’ll configure it for Heroku and deploy to Heroku. We’ll also setup local development server called Nodemon.

When you have a basic server side app created, you’ll be able to connect it to DialogFlow. And that is what we’ll do in section 4.

And frontend will be the next step. In the fifth section, we setup React, configure local servers, create a proxy for communicating with the backend. And we’ll create components. Components for the page and for the chatbot. Our chatbot will begin to look like a chatbot in the 5th section.

But we’ll really polish it in the 6th section, where we’ll create rich messages for the chatbot like cards and quick replies. And also we’ll go deeper into DialogFlow’s features, like follow up intents, contexts, events and slot feeling. Features that make bot creation much easier and much friendlier!

When our bot is polished, we can make it smarter. We want our bot to remember what the user says. Therefore we need to store information that we get from the user. In the 7th section, we’ll be saving to the database and also use what we know about the user in a conversation. To make the bot friendlier. We like if people remember our preferences, it is the same with bots.

In the 8th section, I’ll show you a different way of implement handling actions. We’ll be using DialogFlow’s fulfillment. I’ll show you how to call fulfillment only for intents that need extra code to be run. Only for intents that need to get information from a database, or that need to call some other API, or maybe connect to a device.

When we master fulfillment, we’ll deploy to Heroku. In the 9th section we’ll take care of some extra configuration like routing, postbuild scripts for generating frontend, we’ll also go through the code and make sure all is as needed before we deploy.

And finally, in the 10th section, I’ll show you how to connect to DialogFlow straight from FrontEnd. To do that we’ll need to make some changes in the architecture. I’ll tell you the benefits of every decision.

After the course, you’ll have a demo bot that you can tweak and tailor to you needs. And you’ll have the knowledge to upgrade it.

See you in the course!

Jana

Introduction / Course Overview

1
Introduction
2
App OverView
3
Tech Stack
4
Behind the scenes – application architecture
5
Fulfillment Flow
6
Development stages

DialogFlow introduction

1
DialogFlow Introduction / Create an agent
2
Google project / service accounts / agent settings
3
DialogFLow Intents Basics - Fallback and Welcome intent
4
DialogFLow Intents Basics - Developer defined Intents
5
DialogFlow Entities
6
Intents with parameters
7
Prebuild agents
8
Smalltalk

Server Side App

1
Architecture Introduction
2
Install Express & Generate Express App
3
Heroku deployment configuration
4
Heroku deployment
5
Nodemon setup

Connect Server Side app & DialogFlow

1
Introduction
2
Routes
3
DialogFlow module Authentication setup part 1
4
DialogFlow module Authentication setup part 2
5
Text query to DialogFlow with Async await
6
Chatbot module
7
Event query to DialogFlow
8
Config local & server / Heroku env variables
9
Deploy to Heroku / Test endpoints
10
Common errors when first deploying to Heroku

FrontEnd - Client Side – React setup

1
FrontEnd - Client Side Introduction
2
React app Generation
3
Two servers for development
4
Proxy
5
Components for the page - part 1
6
Components for the page - part 2
7
HTML & CSS with Materialize
8
Connect Server and Client
9
Add API calls to backend APP
10
Simple Message component
11
Welcome message
12
Enable text input from user
13
Scroll to last message rendered
14
Add auto-focus to text input
15
Unique Session for visitors

Developing Frontend

1
Introduction
2
Cards Message in DialogFlow
3
Cards response from DialogFlow in React App
4
Card component
5
Render card galleries part 1
6
Render card galleries part 2
7
QuickReplies Message in DialogFlow
8
Quick replies components
9
Quick replies components implementation
10
Follow up intents
11
DialogFlow contexts
12
Quick replies test
13
DialogFlow events
14
Slot filling
15
Create slot feeling for masterclass
16
Show / hide bot
17
Welcome on Shop – DialogFlow setup
18
Welcome on Shop – listen to navigation history
19
Chatbot – a pause between messages

Save data from conversation to database

1
Mongo db introduction
2
Mongo db setup
3
Mongoose Introduction
4
Add Mongoose to code
5
Where to catch and save registration
6
Mongoose model Classes
7
Saving registration

Fulfillment

1
Introduction to fulfillment
2
Ngrok for local fulfillment
3
Fulfilment setup
4
Fullfilment write to database
5
Fullfilment read from database

Deploying to Heroku

1
Dev vs Prod environment
2
FrontEnd routing on Server
3
Build script for client - postbuild script
4
Code optimisation before deployment
5
Deploying on Heroku

JavaScript client

1
JavaScript client introduction
2
JavaScript token generation
3
Call DialogFlow from FrontEnd
4
Response format
5
Token and extra configuration to environment variables
6
Generate token in nodejs
7
Registration via fulfillment
8
Publish the code

Extra content - DialogFlow Q&A

1
How to validate a parameter in DialogFlow
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!
4.6
4.6 out of 5
130 Ratings

Detailed Rating

Stars 5
79
Stars 4
39
Stars 3
8
Stars 2
1
Stars 1
4
abdb1400c09226d48ad4a5ce44fd3c6d
30-Day Money-Back Guarantee

Includes

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