Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/goldbergyoni/nodejs-course
Materials, slides and other goodies from my Node.JS courses
https://github.com/goldbergyoni/nodejs-course
api asynchronous best-practices clean-architecture clean-code expressjs javascript microservice nodejs performance promises swagger test-driven-development testing-framework
Last synced: 13 days ago
JSON representation
Materials, slides and other goodies from my Node.JS courses
- Host: GitHub
- URL: https://github.com/goldbergyoni/nodejs-course
- Owner: goldbergyoni
- Created: 2018-02-07T19:32:19.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2019-11-27T13:14:06.000Z (almost 5 years ago)
- Last Synced: 2024-10-23T03:33:27.336Z (22 days ago)
- Topics: api, asynchronous, best-practices, clean-architecture, clean-code, expressjs, javascript, microservice, nodejs, performance, promises, swagger, test-driven-development, testing-framework
- Language: JavaScript
- Size: 16.9 MB
- Stars: 163
- Watchers: 8
- Forks: 45
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Yoni Goldberg - Node.JS Course
# Welcome To My Node.JS Course!
This repository holds various materials, demos and instructions for my Node.JS course## Preparation
As we meet in the classroom we wish to spend our precious time on interesting development challenges rather than machine setup. Make sure to prepare your machine aforehand. Should you encounter any issue - please open an issue within this repo and I'll be sure to assist shortly### ✔ 1 Install Node.JS LTS
Install Node.JS LTS (any 12.0.X version) [from this website](https://nodejs.org/en/) - just download and progress within the installation wizard### ✔ 2 Ensure Node is installed correctly
Open your favourite terminal (Windows: command prompt) and type 'NPM verson'. The output should confirm that version (e.g. 12.0) is indeed installed### ✔ 3 Clone this repo
Run the command:```
git clone https://github.com/goldbergyoni/nodejs-course/
```Then navigate into the project directory and install all depedencies:
```
npm install
```### ✔ 4 Install IDE (editor)
I highly recommend using VSCode editor in the course as it's lightweight and has a very rich plugins eco-sysem that we might use during our excercise. Simply visit the [downloads site](https://code.visualstudio.com/download) and choose the edition that suits your operations system. You may opt for any other editor that supports Node debugging and intellisense### ✔ 5 Install POSTMAN
Some of our excercises require to perform web requests, POSTMAN is a popular client tool for running HTTP requests. [Download page](https://www.getpostman.com/apps)### ✔ 6 Polish Your JS Skills
Learning Node requires to be familiar with Javascript. Beside mastering the basic principals of JS, it's recommended to get acquaintance with the following concepts that are highly related to Node.JS:
[10 min JavaScript crash course](https://developer.mozilla.org/en-US/docs/Learn/Getting_started_with_the_web/JavaScript_basics)
[Objects](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects)
[Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise)
[Async/await](https://javascript.info/async-await)
[Arrow functions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions)
[Callbacks](https://developer.mozilla.org/en-US/docs/Glossary/Callback_function)
[Classes](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes)
[Destructuring](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment)
[Spread operator](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_syntax)
[The basics of TypeScript](https://www.typescriptlang.org/docs/handbook/typescript-in-5-minutes.html)
[Express web framework - hello world](https://codeburst.io/getting-started-with-expressjs-3cbb279bd5e6)### ✔ 7 Ensure Familiarity with Backend Concepts
It's assumed that all students are familiar with basic web & backend concepts. For example:
Rest API
Cookies
HTTP headers
JSON## Code Examples
All the code examples that we run in the classroom [can be found in this Git repository](https://github.com/i0natan/nodebestpractices/tree/course)## Slides
Download the slides here:
https://github.com/i0natan/nodejs-course/blob/master/node.js%20course%20for%20GitHub.pptxNote: The slides were meant as complementary material to an onsite course