Course content
Introduction to NodeJS
2NodeJS installation and configuration
3Basic concepts of NodeJS
4NodeJS Basics: NodeJS Installation
5NodeJS Basics: JavaScript Fundamentals
6NodeJS Basics: NodeJS Basics
7NodeJS Basics: Creating an HTTP Server
8NodeJS Basics: Routes and Request Handling
9Basic concepts of NodeJS: Middleware and its application
10NodeJS Basics: Authentication and Authorization
11NodeJS Basics: Data Validation
12NodeJS Basics: Database Integration
13NodeJS Basics: Error Handling
14NodeJS Basics: Automated Testing
15NodeJS Basics: API Documentation
16NodeJS Basics: API Deployment
17Understanding the Node Package Manager (NPM)
18Understanding the Node Package Manager (NPM): Installing NodeJS and NPM
19Understanding the Node Package Manager (NPM): Understanding NPM's role
20Understanding Node Package Manager (NPM): Managing Packages with NPM
21Understanding the Node Package Manager (NPM): Creating a package.json file
22Understanding the Node Package Manager (NPM): Installing packages from NPM
23Understanding Node Package Manager (NPM): Understanding dependencies and devDependencies
24Understanding the Node Package Manager (NPM): Updating packages
25Understanding the Node Package Manager (NPM): Removing packages
26Understanding the Node Package Manager (NPM): Publishing a Package to NPM
27Understanding the Node Package Manager (NPM): Using third-party packages
28Understanding the Node Package Manager (NPM): Configuring scripts in package.json
29Understanding the Node Package Manager (NPM): Understanding the package-lock.json file
30Understanding the Node Package Manager (NPM): Resolving package version conflicts
31Creating a basic server with NodeJS
32Creating a basic server with NodeJS: Installing NodeJS
33Creating a basic server with NodeJS: Setting up the development environment
34Creating a basic server with NodeJS: Understanding the API concept
35Creating a basic server with NodeJS: Creating a basic server with NodeJS
36Creating a basic server with NodeJS: Defining routes and endpoints
37Creating a basic server with NodeJS: Working with HTTP requests
38Creating a basic server with NodeJS: Manipulating data and returning responses
39Creating a basic server with NodeJS: Using libraries/frameworks to facilitate API development
40Creating a basic server with NodeJS: Request validation and authentication
41Creating a Basic Server with NodeJS: Storing Data in Databases
42Creating a basic server with NodeJS: Handling errors and exceptions
43Creating a Basic Server with NodeJS: Testing and Documenting the API
44Building a Basic Server with NodeJS: API Deployment and Hosting
45Introduction to ExpressJS
46Working with routes in ExpressJS
47Working with routes in ExpressJS: Creating basic routes
48Working with routes in ExpressJS: Passing parameters in routes
49Working with routes in ExpressJS: Working with dynamic routes
50Working with routes in ExpressJS: Using middleware in routes
51Working with Routes in ExpressJS: Working with Authentication Routes
52Working with routes in ExpressJS: Creating routes for CRUD
53Working with routes in ExpressJS: Organizing routes in separate files
54Working with routes in ExpressJS: Using HTTP verbs in routes (GET, POST, PUT, DELETE)
55Working with routes in ExpressJS: Working with query parameters in routes
56Working with routes in ExpressJS: Validating data in routes
57Working with Routes in ExpressJS: Working with File Uploads in Routes
58Working with Routes in ExpressJS: Working with JWT Authentication on Routes
59Working with Routes in ExpressJS: Working with Route Authorization
60Working with routes in ExpressJS: Implementing paging in routes
61Working with Routes in ExpressJS: Working with Cached Routes
62Working with Routes in ExpressJS: Testing Routes with Jest or Mocha
63Introduction to API's
64What are REST API's
65Creating a basic REST API with NodeJS and ExpressJS
66Creating a Basic REST API with NodeJS and ExpressJS: NodeJS Installation
67Creating a Basic REST API with NodeJS and ExpressJS: ExpressJS Installation
68Building a Basic REST API with NodeJS and ExpressJS: Initial Project Setup
69Creating a Basic REST API with NodeJS and ExpressJS: Defining Routes
70Creating a Basic REST API with NodeJS and ExpressJS: Creating the Controllers
71Creating a Basic REST API with NodeJS and ExpressJS: Implementing the HTTP Methods
72Building a Basic REST API with NodeJS and ExpressJS: Data Validation
73Building a Basic REST API with NodeJS and ExpressJS: Error Handling
74Building a Basic REST API with NodeJS and ExpressJS: Authentication and Authorization
75Building a Basic REST API with NodeJS and ExpressJS: In-DB Data Manipulation
76Building a Basic REST API with NodeJS and ExpressJS: API Documentation
77Building a Basic REST API with NodeJS and ExpressJS: Automated Tests
78Building a Basic REST API with NodeJS and ExpressJS: API Deployment
79Working with JSON in NodeJS
80Working with CORS in NodeJS
81Error handling in NodeJS
82Introduction to MongoDB
83Integrating NodeJS with MongoDB
84Creating a CRUD with NodeJS and MongoDB
85Creating a CRUD with NodeJS and MongoDB: NodeJS Installation
86Creating a CRUD with NodeJS and MongoDB: MongoDB Installation
87Creating a CRUD with NodeJS and MongoDB: Development Environment Setup
88Creating a CRUD with NodeJS and MongoDB: Creating the NodeJS Project
89Creating a CRUD with NodeJS and MongoDB: Connecting to the MongoDB database
90Creating a CRUD with NodeJS and MongoDB: Creating routes for the CRUD
91Creating a CRUD with NodeJS and MongoDB: Creating controllers for each CRUD operation
92Creating a CRUD with NodeJS and MongoDB: Implementing functions to create, read, update and delete data
93Creating a CRUD with NodeJS and MongoDB: Validation of received data
94Creating a CRUD with NodeJS and MongoDB: Error Handling
95Creating a CRUD with NodeJS and MongoDB: Unit Tests
96Creating a CRUD with NodeJS and MongoDB: API Documentation
97Creating a CRUD with NodeJS and MongoDB: Application Deployment
98Authentication and authorization in NodeJS API's
99Authentication and authorization in NodeJS APIs: Authentication with JWT
100Authentication and authorization in NodeJS APIs: Authorization with roles and permissions
Course Description
Welcome to the comprehensive course "How to Create APIs in NodeJS: From Basic to Advanced", an essential part of the Information Technology category specializing in Backend Development. This course is meticulously crafted, encompassing 149 pages of content that will take you from the fundamentals to expert-level API development using NodeJS.
Dive into the world of NodeJS starting with an introduction that sets the foundation, followed by detailed instructions on installation and configuration. You'll explore basic concepts that are crucial for grasping the core functionalities of NodeJS. Learn to create an HTTP Server, handle routes and requests, and implement middleware applications effectively.
Authentication and authorization are vital for security, and this course provides comprehensive coverage on how to implement these mechanisms efficiently. Understand the importance of data validation, database integration, error handling, and automated testing to ensure robust API development. API documentation and deployment tactics are covered to complete your basic skills.
The course progresses to a deep dive into the Node Package Manager (NPM), where you will learn to manage packages, understand dependencies, and create a package.json file. You'll become proficient in installing, updating, and removing packages as well as publishing your own packages to NPM. Learn to handle package version conflicts and configure scripts in package.json for streamlined development processes.
Building a basic server with NodeJS forms a significant part of this course. From setting up the development environment to working with HTTP requests and defining routes, every aspect is detailed out. You'll also learn to use libraries to facilitate API development, handle requests validation, store data in databases, and manage error handling and documentation comprehensively. By the end, you'll know how to deploy and host your server efficiently.
ExpressJS is introduced to enhance your server capabilities with advanced routing techniques, including passing parameters, working with dynamic routes, and implementing middleware. You'll master CRUD operations, authentication routes, and utilizing HTTP verbs. Further, learn to validate data, handle file uploads using routes, and work with JWT for secure route authentication.
The course doesn't stop at the basics; it includes creating REST APIs with NodeJS and ExpressJS, handling JSON, and working with CORS. You'll venture into error handling, MongoDB integration, CRUD operations, and mastering authentication and authorization in NodeJS APIs using JWT and other strategies.
With advanced sections on working with JSON Web Tokens, data validation using the Joi package, file uploads with Multer, and creating live chats with Socket.IO, you'll build complex, real-time applications. Testing your NodeJS APIs with Postman and Jest ensures the reliability of your code.
Deployment strategies using Docker and Kubernetes are covered to help you manage and monitor your API's performance with PM2. Secure your NodeJS APIs and improve performance, session management, and caching strategies. Document your APIs with Swagger and manage API versioning for clean, maintainable code.
The course also delves into working with queues, WebSockets, GraphQL, and advanced practices, including refactoring a NodeJS API to TypeScript, design patterns, and SOLID principles. Convergence of theory and practical knowledge prepares you for next steps in NodeJS, making you adept at creating sophisticated APIs in a professional environment.
This free course includes:
10h24m free online audio course
149 content pages
Certificate of course completion
Exercises to train your knowledge