📚 Complete Curriculum: Beginner to Advanced
This repository contains comprehensive teaching materials for learning NestJS from scratch to advanced levels, including complete working examples with frontend integration.
📖 Table of Contents
Beginner Level
- Introduction to NestJS
- Project Setup
- Controllers and Routes
- Basic RESTful API
- Modules and Providers
- Your First API
- Complete Code Examples - Runnable code for beginners
Intermediate Level
- Services and Dependency Injection
- Middleware
- Pipes (Validation & Transformation)
- Guards (Authentication & Authorization)
- Exception Filters
- Interceptors
- Custom Decorators
- Complete Code Examples - Runnable code with advanced features
Advanced Level
- Advanced Decorators
- Custom Providers
- Dynamic Modules
- Microservices
- WebSockets
- Testing (Unit & E2E)
- Performance Optimization
- Database Integration (TypeORM/Prisma)
- Complete Code Examples - Production-ready patterns
🚀 Quick Start
Prerequisites
- Node.js (v18 or higher)
- npm or yarn
- Basic knowledge of TypeScript and JavaScript
Installation
# Install dependencies
npm install
# Start the development server
npm run start:dev
# The backend will run on http://localhost:3000
# The frontend demo is available at http://localhost:3000/public/index.html
📖 For detailed setup instructions, see SETUP.md
⚡ For a quick 5-minute start, see QUICK_START.md
📁 Project Structure
nest.js/
├── 01-beginner/ # Beginner tutorials
├── 02-intermediate/ # Intermediate concepts
├── 03-advanced/ # Advanced topics
├── examples/ # Complete working examples
│ ├── backend/ # NestJS backend application
│ └── frontend/ # HTML/CSS/JavaScript frontend
├── src/ # Main application source
└── package.json # Dependencies
🎯 Learning Path
- Start with Beginner - Learn the fundamentals
- Progress to Intermediate - Master core concepts
- Advance to Advanced - Build complex applications
- Practice with Examples - Work through complete projects
🔗 RESTful API Endpoints Covered
- GET - Retrieve resources
- POST - Create new resources
- PUT - Update entire resources
- PATCH - Partial updates
- DELETE - Remove resources
- OPTIONS - CORS and preflight requests
📖 For detailed RESTful API concepts, see RESTFUL_API_GUIDE.md
💡 Features Demonstrated
- ✅ Complete RESTful API implementation
- ✅ Frontend-backend integration
- ✅ CORS configuration
- ✅ Request validation
- ✅ Error handling
- ✅ Authentication patterns
- ✅ Best practices
📚 Additional Resources
- Quick Start Guide - Get running in 5 minutes
- Setup Instructions - Detailed installation guide
- Learning Guide - Complete study plan and roadmap
- RESTful API Guide - Comprehensive RESTful API tutorial
🎓 What's Included
Tutorial Materials
- Beginner Level: Complete introduction to NestJS fundamentals
- Intermediate Level: Core concepts, validation, guards, interceptors
- Advanced Level: Microservices, WebSockets, testing, optimization
Working Examples
- Backend: Full NestJS application with Tasks and Users modules
- Frontend: Modern HTML/CSS/JavaScript interface
- All HTTP Methods: GET, POST, PUT, DELETE, OPTIONS demonstrated
Features
- ✅ Complete RESTful API implementation
- ✅ Request validation with class-validator
- ✅ Error handling and exception filters
- ✅ CORS configuration
- ✅ Frontend-backend integration
- ✅ Real-time API response display
- ✅ Modern, responsive UI
📝 License
This is educational material for learning NestJS.