Now, I did already mention
what NodeJS is and why we need a server-side language
like NodeJS in the previous course section.
Therefore, I only briefly want to summarize it here again,
NodeJS is a language or to be very precise,
a JavaScript Runtime that we can install on any computer.
It allows us to execute JavaScript code
outside of the browser.
And up to this point in the course,
if we ignored the previous course section,
we only knew that browsers are able
to execute JavaScript code.
Well, it turns out that if we installed
this extra NodeJS tool,
any computer can execute JavaScript code.
And therefore, we can use JavaScript
in conjunction with this NodeJS
runtime tool to write code that executes
on a server since any computer can be a server.
And that allows us to write server-side code
that will for example, generate HTML instructions
dynamically, or reach out to a file system
or a database with JavaScript and NodeJS.
Now I do have a complete deep dive course about NodeJS
in case you want to learn more,
but in this and the next course sections,
we got many sections on this actually.
You will learn how to use NodeJS,
and how you can write such Backend code with NodeJS.
Now, in order to write NodeJS code and write
server-side JavaScripted Backend code with NodeJS,
you first of all, need to install NodeJS.
And for this, you should visit NodeJs.org.
Here you'll find download links for the latest version
and the long-term stability version.
The difference between these two versions is that the LTS,
the long-term support version simply is an older version,
which still receives active support like security fixes.
Whereas that latest version is well,
as the name implies the very latest version
with all the latest new features.
As sometimes new versions introduce
new features or break old features.
That's why we have both a stable older version,
and the latest version to choose from.
Overall, it is worth noting though that NodeJS
is a very stable and well-maintained runtime.
And therefore you can download and use
the latest version here for this course.
Even if you see a different higher version number
at the point of time you're viewing this video.
What you will learn in this and the next course sections
will still apply to that version.
So you're not missing anything just because
I'm using this version in this course right now.
All that being said,
you can now download this current, this latest version here.
And by default, it should already select
the version for your operating system.
If it doesn't do that,
you can click on other downloads,
and here you'll find a Windows installer, a macOS installer.
And you'll also find Binaries for Linux
which you can download and use.
But by default, the correct one should be preselected here.
Now, if I do download this,
it starts to download and downloads this installer
on my system.
And that's the case, both for macOS and Windows.
Once the download finished, we can execute this installer.
And here you see the macOS installer that started up,
and you can just walk through all the steps
that are shown here,
and it's the same for windows.
So here I'll continue, accept the license agreement,
and basically accept all the default settings.
Enter my password if prompted for,
and install NodeJS with that.
And as mentioned, it's the same on Windows.
You also can just accept all the default settings here
and then finish installation and close the installer
once you're done.
With that, we got the NodeJS tool installed on our system,
and we can now use that tool to execute JavaScript code
that may then also use extra NodeJS features,
since NodeJS is the tool executing the code.
Instead of the browser,
we can use any JavaScript features
that are supported by NodeJS.
Now, which features are supported?
That's something which you can find
in the official Docs here on NodeJS.org.
There, you can choose your NodeJS version.
By default the latest one,
and then click on API reference documentation.
And you will learn about all the different parts,
all the different packages you could say,
that make up the NodeJS tool.
And these are simply different packages that expose
different features that you can use in your JavaScript code.
Adjust as we can interact with the Dom in the browser.
We now, for example,
can interact with the file system here
when executing our code with NodeJS.
Now of course,
going through these stocks can be very overwhelming,
especially if you're just getting started,
and they offer these Docs are a great backup,
something to come back to,
but we will learn NodeJS step-by-step together
over the next lectures and course sections,
because there are many important features to explore,
many features and patterns
which you are going to use over and over again.
And that's there for what we are going
to dive in throughout this course.