Skip to content

This repository contains all the material for the HackYourFuture module "Understand backend: creating web servers with JavaScript using Node.js"

Notifications You must be signed in to change notification settings

mahmoudbd/Node.js

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

If you are following the HackYourFuture curriculum we recommend you to start with module 1: HTML/CSS/GIT. To get a complete overview of the HackYourFuture curriculum first, click here.

Please help us improve and share your feedback! If you find better tutorials or links, please share them by opening a pull request.

Module #5 - Understand backend: creating web servers with JavaScript using Node.js (Backend)

NodeJS

So far you've learned about the fundamentals of what makes up a webpage in your browser. We call this frontend: the HTML that gives structure to our pages, the CSS that give it a nice look, and lastly the JavaScript that makes our page interactive. Everything you can "see" and "interact" with is made out of these technologies.

However, there is a whole part of applications that you might not be aware of. Have you ever wondered how data moves from one place to another, from one page to another? This is where backend comes into play: all the parts of an application that can't directly be accessed by the user, but happen "behind the screen". Well here's the secret: there is code that tells the computer how to move and manipulate data. This code is hidden away from the user, because there is no need for them to know about it.

During the following 3 weeks you'll be learning one approach of creating a backend. As a tool to illustrate these concepts we will be using Node.js: software that allows us to use the language of JavaScript to be written and executed outside of the browser. Keep in mind that there are, like everything in development, multiple ways of doing this. There are different other languages and technologies that can be used to create a backend of an application.

Learning goals

In this module you will get familiar with the world of backend development. By the end of it you have learned:

  • What is meant by the term backend
  • The client-server model
  • What HTTP and REST mean
  • How to create your own web servers with Node.js, using Express.js
  • What a templating engine is.
  • How to use the Node Package Manager (NPM).
  • How to use Express.js to make a RESTful API
  • How to build a small full-stack application

Before you start

Before you start you need to install a very important software: Node.js! We're going to use the latest stable version of it, which is v10.x. Click on the following link to download it to your computer:

Verify the installation by running node -v (-v is short for version) from the Command Line. It should say: v10.14.2 or a later version than that.

Planning

Week Topic Readings Homework Lesson Plan
1. Client-server model, HTTP & Express Readings W1 Homework W1 Lesson Plan W1
2. REST, CRUD & API Readings W2 Homework W2 Lesson Plan W2
3. Templating engines, API calls Readings W3 Homework W3 Lesson Plan W3

Finished?

Did you finish the module? You're a rockstar!

If you feel ready for the next challenge, click here to go to Databases!

The HackYourFuture curriculum is subject to CC BY copyright. This means you can freely use our materials, but just make sure to give us credit for it :)

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.

About

This repository contains all the material for the HackYourFuture module "Understand backend: creating web servers with JavaScript using Node.js"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 95.3%
  • HTML 4.7%