Please help us improve and share your feedback! If you find better tutorials or links, please share them by opening a Pull Request.
This 5 week HYF Module is about creating a fullstack application in Node.JS. What does fullstack exactly mean? It means we will be creating and connecting both the backend api and the frontend html, css and javascript.
Most of this course will focus on the backend part. Meaning building a webserver that has an api connected to a database. In the last couple of weeks we will then connect the backend api to the frontend javascript. Hopefully giving you an overview of the connection between these parts:
Database <--> Webserver <--> Frontend
Week | Topic | Preparation | Homework | Lesson plan |
---|---|---|---|---|
1. | HTTP Introduction to node js Simple webserver |
Preparation | Homework | Lesson plan |
2. | Express | Preparation | Homework | Lesson plan |
3. | Database connection API |
Preparation | Homework | Lesson plan |
4. | Fullstack application Connecting frontend to backend |
Preparation | Homework | Lesson plan |
5. | Finishing last weeks homework | Preparation | Homework | - |
Theses things you should study by yourself!
- Error handling
- Validation
We will build on knowledge from the following HYF (sub)modules. If we feel we have gaps we should review the curriculum ourselves or ask a teacher to help.
- What is Node.js?
- Using Node Package Manager (NPM)
- Using
require
to include modules - Using
express
to make a RESTful API - Using
mysql
to connect the API to the backend - Connecting the frontend to the backend API
- Frontend routing
- Postman
For almost any web application, it is essential to have a backend. The backend is a place where we, the developers, can store our data, communicate with users and let the users communicate with us, do smart things like calculations, data processing etc.
There are many languages for this. We might've heard of Java, C, C++, Go, Python, Ruby, PHP and the list goes on.
There are two reasons why we at HYF choose Node.JS over others:
- You already know JavaScript, so it's easier to get started than other languages
- Node.js is great for making web APIs because it is asynchronous by nature and thus allows for high input/output. By this we mean that it allows many users to make very light requests at the same time.