In the last section we finished up our entire deployment deployment process so we know how to handle
first time deployment.
That is the very first time that we deploy our application and set up the Heroku environment and then
we know how to do subsequent deploys in the future after we make some change to our application.
Now one last thing I want to say about that process you might be looking at the you are right here and
saying Stephen I really want to have a custom mural like I want to have my own domain name.
That is something that we'll talk about later on in the course.
But right now I wanted to see was this default domain rather than getting super off topic.
So let's talk about the next feature we're going to be working on.
I'm going to change back to one of the diagrams that we looked at much earlier in the course.
So remember this was the flow that we had said that a user would go through when they first come to
our application and step one right there at the top user signs up to our application via Google Earth.
And so that's going to be the first feature that we work on in our application.
Now this is going to be an entirely server side feature.
So you will notice that we have not yet done anything with react.
We haven't done anything with redox.
We're going to stay on the server as long as possible just so we can kind of you know say okay we're
kind of doing this one thing at a time rather than changing very quickly from the back end to the front
end which would probably lead to a lot of confusion.
And of course like this now before we actually start this feature I'm going to tell you right now we
are really without a doubt no two ways about it diving headfirst into the most challenging feature of
this application.
This old stuff right here.
This is going to be the hardest stuff in the course.
No two ways about it.
I completely guarantee it.
Now that might sound well I imagine it does sound intimidating.
I mean hey what can I say probably sounds intimidating but I can tell you that we're going to learn
a ton during the process.
It's going to be a lot of fun and we're going to learn a lot of skills that you're going to be able
to translate directly over to your own personal projects.
So everything that we do inside of this step right here is a 100 percent transferable to any project
that you're going to work on yourself.
Now later on in the course we're going to start doing some like very application specific logic around
you know handling campaigns and whatnot and all that kind of stuff you know show and reports and stuff
and all that stuff is very specific to this app that we're building.
And so you're going to learn a lot during that phase.
But it's all going to be kind of tailored around this app that I dreamed up Google.
However again this is something you can use it anywhere you'll use it on your job you'll use it on personal
projects everywhere.
So it very much is worth kind of taking some of this up front difficulty because you're really going
to pick up a lot during it.
OK.
So that's kind of my my pep talk so to speak.
You know it's can be challenging but I have to say that we're going to learn a lot.
That's a pep talk that's going to be you know it hopefully keeps you engaged and going along for a little
bit here.
So let's start diving into this feature in talking about what it's really going to take and how are
we going to tackle it.
So the first thing I want to do when we're talking about Google last year is what is off.
Right like what is this really doing for us.
Well just to be clear at the end of the day what we want to have is essentially a button that looks
like this.
So right now I'm just on Google Images.
I just looked up a random signing with Google but I'm positive.
Without a doubt you've seen a button like this in the past on some other Web sites something and says
signing with Google or sign up with Google something and says you know just you don't have to make your
own e-mail and password on this Web site just use your Google account to sign in.
You've probably also seen something very similar like this that says log in with Facebook or maybe you
know log in with Twitter logon with just about anything log in with get log in with Linked In.
These are all log in or off authentication systems.
So they are all systems that use the O off protocol under the hood or the auth authentication standard.
And so that's what we're going to be using inside of our application.
Now I don't necessarily have a great reason for using a cloth over e-mail and password combinations.
Really I just wanted I figure that chances are if you're taking the course you probably want to hear
about a lot as opposed to email and password stuff which is you know at this point kind of legacy and
not tremendously popular anymore.
If anything it kind of provides friction to your users to sign up to you're out.
So in general I do kind of recommend you use cloth in general for your own personal applications.
There's just a much better chance your users are actually going to sign in and enjoy your service.
Let's be honest.
OK.
So sign with Google.
That's the end result that's we want to get to.
Now the problem is that the flow or the path to get there and make this thing a reality is madness.
So I'm going to show you a diagram.
You're going to hate me when I show it to you.
You're not going to like me.
So here it is.
So here's the diagram.
This is the entire flow.
Let me get the right zoom level here.
There we go.
So this is the entire flow that we are going to implement to get Google off to work with our application
many steps a lot of stuff going on.
Yes it is confusing like I said this is not going to be a walk in the park but we're going to do it
all from scratch as much as possible.
And you're going to learn a ton about how Express works you're going to learn about how Mongo works.
Mongo D.B and a lot of associated technologies around the way so we're not going to go through this
flow right now.
We'll take a pause right now in the next section.
We're going to start working through this flow a little bit and then we're just going to tackle like
the first couple of steps in general.
Maybe we'll go through the first thing we'll see and then continue after that we'll start to actually
implement this thing on our server side code base.
So let's take a quick break and we'll start to dive into this flow in the next section.