Week | Topics | Details | Project/Task | Progress |
---|---|---|---|---|
Week 1 | JavaScript Fundamentals | Master variables, data types, loops, functions, and objects. Focus on ES6+ features such as arrow functions, template literals, and destructuring. | Create a To-Do List App: A basic task tracker with add, delete, and mark complete features. | [ ] |
JavaScript Asynchronous Programming | Learn Promises , async/await , and callback handling. Understand how JavaScript manages asynchronous tasks with the event loop. |
Add a Save to Local Storage feature to the To-Do List App using asynchronous logic. | [ ] | |
Week 2 | Node.js Basics | Understand Node.js runtime, modules (fs , http , path ), and NPM for managing dependencies. |
Create a File System App: A CLI tool to create, read, and delete files and directories. | [ ] |
Node.js Asynchronous Programming | Explore Node.js streams, buffers, and the EventEmitter API. |
Enhance the File System App to handle large files with streams and real-time logs. | [ ] | |
Week 3 | Express.js Basics | Set up a web server with Express.js. Learn routing, serving static files, and handling requests and responses. | Build a Simple Blog API: Create routes for CRUD operations (Create, Read, Update, Delete) on blog posts. | [ ] |
Express Middleware | Learn to use middleware for request parsing, logging, and error handling. | Add logging and error-handling middleware to the Blog API. | [ ] | |
Week 4 | MongoDB Basics | Learn database fundamentals: collections, documents, CRUD operations, and MongoDB queries. | Build a Student Database: Perform CRUD operations to manage student records. | [ ] |
Mongoose Basics | Integrate Mongoose for schema creation, validation, and queries. | Enhance the Student Database with Mongoose for schema-based validation and relationships. | [ ] | |
Week 5 | RESTful API Design | Learn REST principles and how to structure APIs with proper URL conventions and HTTP methods. | Create a Task Manager API: Manage tasks with CRUD endpoints and apply RESTful best practices. | [ ] |
Authentication | Explore user authentication with bcrypt for password hashing and JWT for token-based authentication. |
Add user authentication to the Task Manager API for secure login and task access. | [ ] | |
Week 6 | Error Handling and Testing | Learn structured error handling with try-catch and build robust APIs. Understand the importance of testing APIs using tools like Jest or Postman. |
Write test cases for the Task Manager API and implement error handling for all routes. | [ ] |
Week 7 | Advanced Node.js Concepts | Explore worker threads, clustering, and child processes for improving performance and scalability in Node.js applications. | Build a Load-Balanced API: Use clustering to handle concurrent requests efficiently in the Task Manager API. | [ ] |
Week 8 | Deployment and Environment Management | Learn how to deploy applications using services like Heroku or AWS. Understand environment variables and configuration management. | Deploy the Task Manager API on Heroku with proper environment variables for database and authentication secrets. | [ ] |
Week 9 | Version Control and Collaboration | Master Git for version control and collaborative workflows using GitHub or GitLab. Learn branching, merging, and resolving conflicts. | Create a GitHub repository for the Task Manager API and invite collaborators to simulate a team workflow. | [ ] |
Week 10 | API Optimization and Security | Explore caching, rate limiting, and securing APIs against common threats (e.g., SQL injection, CSRF, XSS). | Add rate limiting and input sanitization to the Task Manager API to enhance security and performance. | [ ] |
-
To-Do List App
- A beginner-friendly project to practice JavaScript fundamentals.
- Features: Add, delete, mark complete, and save tasks using
localStorage
. - Focus: Event handling and DOM manipulation.
-
File System App
- CLI-based project to interact with the file system using Node.js.
- Features: Read/write files, create directories, handle large files with streams.
- Focus: Working with Node.js modules and the file system.
-
Simple Blog API
- RESTful API for managing blog posts.
- Features: CRUD operations, error handling, and middleware for logging.
- Focus: Routing and Express.js middleware.
-
Student Database
- A project to practice MongoDB CRUD operations with Mongoose schema validation.
- Features: Add, update, delete, and query student records.
- Focus: Schema design and database interaction.
-
Task Manager API
- An advanced RESTful API project for managing user tasks.
- Features: User authentication, CRUD operations, and rate limiting for security.
- Focus: Authentication, API design, and optimization.