Full Stack Development Curriculum
Duration: 40 Hours + 20 Hours Capstone Project
HTML, CSS and TailwindCSS Framework
• Layouts using HTML
• CSS3 and Animations
• Tailwind CSS – a utility-first approach to css
JavaScript
• Variables and Datatypes
• Arithmetic and Logical Operators
• Conditional Statements
• Arrays and Objects
• Functions
• Loops
• Object Oriented Programming
• ES6+ Features: let/const, Arrow Functions, Template Literals
• Object Destructuring, Spread & Rest Operators
• Promises & Async/Await – Introduction to Asynchronous programming
• Basics of this, Closures, and Prototypes
TypeScript
• Type Basics: string, number, boolean, any, unknown
• Interfaces
• Type Aliases
• Generics Types
• Utility Types
• Object Types
• Enums
• Tuples
• Type Guards
• Mapped Types
Angular 19
• Setup & Architecture
o Project setup using ng new
o Understanding the structure (modules, components, services)
o Strict mode configuration
o Standalone components
• Components & Directives
o Lifecycle hooks (ngOnInit, ngOnDestroy)
o Input & Output bindings
o EventEmitter
o Directives: ngIf, ngFor, ngClass, ngStyle
o Custom Directives
o Pipes
• Routing & Navigation
o Setting up Router
o Lazy Loading
o Route Guards
o Query Params
o Nested Routes
• Forms & State Management
o Template-driven forms
o Reactive Forms
o Form Validation (Validators)
o Angular Signals
o RxJS (BehaviorSubject, Observable, switchMap, and more)
• HttpClient & API Integration
o Introduction to API and RESTful services
o Making API Calls (GET, POST, PUT, DELETE)
o Interceptors for injecting authentication tokens
o Error handling (catchError)
• Component Communication & Services
o Dependency Injection
o Singleton Services
o Data Sharing – Local Storage
o Data Sharing - Services
• UI/UX Enhancements
o Material Design
o Material Components
o Tailwind CSS
• Performance Optimization
o Change Detection (OnPush)
o Lazy Loading Modules
o Async Pipe Usage
o Preloading Strategies
o Building the project for various environments (Test, Stage and
Production)
Node.js
• The “node” vs “npm” command
• Creating an npm project
• Working with package.json file
• Understanding Event Loop
• File System (fs module)
• Events and Event Emitter
• Creating a Basic HTTP Server (http module)
• Using dotenv for Environment Variables
• Express Framework to set up a simple webserver
• Handling GET and POST routes with parameters
• Error handling
NestJS (A NodeJS Framework - MVC)
• Project Setup
o Setting up a project and scaffolding
o Understanding the folder structure
o Package Installation
• Modules, Controllers & Services
o Creating & Injecting Services
o Dependency Injection (@Injectable)
o Exceptions
o Global Error Handling
• Database Integration (PostgreSQL)
o TypeORM Setup
o Entities
o Migrations
o Repository Pattern
o Relationships
• Authentication & Authorization
o Implementing JWT Authentication
o Role-based Access Control (RBAC)
• Middleware, Guards & Interceptors
o Guards
o Logging
o Error Handling with Interceptors
o Rate Limiting
• REST API Development
o CRUD Operations
o API Versioning
o Request Validation with class-validator
o DTOs
o Responding with appropriate error codes on API error
• Caching
o Improvise performance using Redis In-Memory Cache
o Implement Application Cache to speed up response times
• Event Driven Microservice Architecture
o Introduction
o Implementation of independent services
o Inter-service communication using TCP as transporter
o Introduction to Kafka – Distributed systems and Implementation
PostgreSQL
• Database Setup & Configuration
• Schema Design & Normalization
• Writing Queries: SELECT, INSERT, UPDATE, DELETE
• Indexing & Performance Optimization
• Transactions & ACID Compliance
Version Control - Github
• Introduction to Version Control
• Maintaining branches to isolate modules
• Managing code when working as a team
• Branch Merging and Handling conflicts with other branch codes
• Pull requests
CI/CD – Continuous Integration and Continuous Development
Github Actions:
• Setting up a new workflow
• Automating project building
• Automating project deployment on AWS EC2 server
AWS Cloud deployment
• Setting up an EC2 instance – Linux
• Setting up firewall for restricted access
• Port forwarding
• Installing Nodejs and it’s dependencies
• Configuring Server blocks for domain redirection
• Configuring Server blocks for gateway redirection
• Managing services using PM2
• Autoscaling for High Availability
• Elastic IP address assignments to EC2 server
• Route 53 – Configuring server IP to connect to domain via A record
Capstone Project
Build a full-fledged Event Booking App similar to Bookymyshow
• IDE: Webstorm / VSCode
• Frontend: Angular v19, Angular Material
• Backend: NestJS Microservices
• Database: PostgreSQL
• Versioning and CI/CD: Github and Github Actions
• Deployment: AWS (EC2, S3, RDS)
Features:
Customer-Facing App
1. User Authentication & Profile
2. City & Location Selection
3. Browse Events
4. Event Details
5. Venue & Time Selection
6. Interactive Seat Selection
7. Booking & Payment
8. E-Ticket Management
9. Notifications
Admin Panel
1. Admin Authentication
2. Dashboard & Analytics
3. Event Management – Create and manage events
4. Venue & Screen Management – Set up venue and seating layout
5. Showtime Scheduling
6. User Management
7. Bookings Report
8. Payments Reports
Learning Outcome
• Build scalable full-stack production ready apps using Angular/React + NestJS
which is a tech stack used by leading tech companies
• Master REST APIs & PostgreSQL database
• Leverage advanced Angular concepts & state management
• Implement secure authentication & role-based authorization
• Optimize end-to-end performance by applying best practices wherever
necessary
• Learn how to confidently launch your apps using AWS with CI/CD pipelines,
PM2 process management, environment configuration and auto-scaling.
• Understand Modern Architecture & Scalability Techniques
• Think Like a CTO - By the end of the course, you’ll be able to architect, build,
scale and deploy applications like a seasoned tech lead or startup founder.