Explore Node.js

If you have some programming experience and want to build a backend using Node.js, Express, and MongoDB, this course is for you or your team. In this 1.5 day course, you will learn how to create a server with Express including a RESTful API. You will also learn how to store data in MongoDB and enforce the schema with Mongoose. Finally, you will learn to test your application with jest and Cypress.

Description

If you have some programming experience and want to build a backend using Node.js, Express, and MongoDB, this course is for you or your team.  In this 1.5 day course, you will learn how to create a server with Express including a RESTful API.  You will also learn how to store data in MongoDB and enforce the schema with Mongoose.  Finally, you will learn to test your application with jest and Cypress.

Who should take this class?

  • Front-end Developers wanting to learn back-end coding

  • Back-end Developers moving to Node.js, Express

  • Full-stack developers moving to Node.js, Express

How to prepare:

  • A basic understanding of object-oriented or functional programming is expected.

  • Software development experience is necessary, though it does not have to be with JavaScript.

  • Before class starts, make sure you have the right tools installed. You will need a browser, an IDE, and Node 16. We recommend Chrome for your browser and VS Code as your IDE.

  • In terms of Operating System, we recommend Mac, Linux, or Windows System for Linux (WSL) but using Windows without WSL is possible.

Syllabus:

Build a Server with Express

  • Create multiple endpoints

  • Build a RESTful set of endpoints to create, delete, and update data

  • Authentication with JSON Web Tokens

  • Use middleware to check authentication and environment

  • Send up to date data over Web Sockets 

 

Store Data with MongoDB

  • Set up a MongoDB Database for storing data

  • Enforce the schema with Mongoose in Node.js

  • Read and write records

 

Testing

  • Write unit tests for authentication middleware

  • Write API tests with Cypress for the RESTful endpoints

  • Validate authentication is required for an endpoint with API tests