Module 0: JavaScript OverView (Prerequisite)
Sessions:
1. JS Syntax, Variables, Data Types
2. Functions, Scope & Closures
3. Arrays & Objects, Looping Techniques
4. ES6+ Features: Let/Const, Arrow Functions, Spread/Rest, Destructuring
5. Promises, Async/Await, Callbacks
6. Modules & Imports (CommonJS vs ESModules)
7. Error Handling & Try-Catch
Module 1: Node.js Fundamentals
Sessions:
1. Introduction to Node.js & Setup
2. Understanding Event Loop & Non-blocking I/O
3. Working with Core Modules (fs, path, http, os, etc.)
4. Parsing HTTP Requests and Sending Responses
5. Creating Simple Web Server without Express
Module 2: Server-side Rendering & Express
Sessions:
1. Dynamic HTML Rendering (without Framework)
2. Intro to Express.js: Setup & Routing
3. Middlewares & Error Handling
4. Templating Engines (EJS/Pug/Handlebars)
5. Query Params, Route Params, Serving Static Files
Module 3: Working with Files & PDFs
Sessions:
1. Reading & Writing Files (fs module)
2. Uploading Files with Multer
3. Generating PDFs on the Server (PDFKit)
4. Downloadable Responses & Streams
Module 4: MVC Architecture & Modularization
Sessions:
1. Understanding MVC Pattern
2. Refactoring Node.js Apps using MVC
Module 5: Working with Databases
Sessions:
1. Intro to Databases (SQL vs NoSQL)
2. MySQL & Sequelize ORM Basics
3. CRUD Operations with Sequelize
4. MongoDB & Mongoose Basics
5. Advanced Queries & Relations (Both ORMs)
6. Validation, Middleware & Population
Module 6: Authentication & Authorization
Sessions:
1. Working with Sessions & Cookies
2. Hashing Passwords (bcrypt)
3. Login, Signup Flows with JWT
4. Protecting Routes, Role-based Auth
Module 7: Other Features
Sessions:
1. Sending Emails with Nodemailer
2. Input Validation & Sanitization (express-validator)
3. Data Pagination (Manual + with Mongoose/Sequelize)
4. Integrating Stripe.js for Payments
Module 8: Building REST APIs
Sessions:
1. Designing RESTful Routes
2. Controllers & Services Separation
3. Authentication with JWT in REST APIs
4. File Upload in APIs (Multer, Cloudinary)
5. Best Practices, Testing with Postman
Module 9: GraphQL with Node.js
Sessions:
1. Intro to GraphQL & Apollo Server
2. Schema Design, Resolvers
3. Auth in GraphQL APIs
4. File Uploads in GraphQL
5. Integrating with Frontend
Module 10: Realtime with Web Sockets
Sessions:
1. WebSocket vs HTTP
2. Realtime Chat App using ws or Socket.io
Module 11: Testing
Sessions:
1. Unit Testing with Jest/Mocha
2. Integration Testing
Module 12: Deployment & Advanced Topics
Sessions:
1. Environment Variables & Security
2. Deploying Node App (Render/Heroku/VPS)
3. Using TypeScript with Node.js
4. Exploring Deno.js
Final Project & Wrap-up
Sessions:
1. Final Fullstack Project (REST or GraphQL)
2. Review & Next Steps / Bonus Resources
Duration: 80 Hours
Villa No. 48, 2nd Floor, Flat 6, 105th Street, El Horreya Sq., Beside El Raya Market, Maadi - Cairo, Egypt 11728
Mobile+20 1112 50 5953
Whatsapp+20 101 774 3315
Email info@itsharks.co