AWS Learning Portal
A full-stack cloud application built with Next.js, NestJS, and AWS — demonstrating IAM access control, KMS encryption, GuardDuty threat detection, CloudTrail auditing, WAF protection, and end-to-end AWS security hardening.
Final Project Alignment
The homepage now surfaces the same architecture strengths documented in the final project brief and alignment notes.
Frontend and backend are exposed directly from the EC2 host on separate ports with a stable Elastic IP.
IAM roles for EC2 and Lambda, JWT auth, password recovery, Turnstile support, upload validation, and throttling protect the platform end to end.
Lambda (cs79d-log-action) is invoked via API Gateway and AWS SDK for file uploads, password actions, and demo triggers — writing results to DynamoDB.
A single EC2 deployment with PM2 keeps the environment cost-conscious and straightforward to maintain.
CloudWatch dashboard and alarms support the health endpoint, live logs, and activity evidence shown throughout the portal.
t2.micro EC2, DynamoDB on-demand, and S3 free-tier defaults keep the deployment within free-tier limits; cleanup guidance documents safe resource removal.
Project Requirements Coverage
Key CS 79D deliverables mapped to the current implementation
Compute Engine
Next.js frontend and NestJS backend deployed on AWS EC2 with PM2 process management.
Object Storage
User-uploaded files are stored in the cs79d-uploads S3 bucket with file-type and size validation.
Serverless Workflow
Demo actions trigger a real Lambda logging flow and write records to DynamoDB.
Public Access
The deployed EC2 environment uses a static public IPv4 through an Elastic IP for stable frontend and backend access.
Deployment Model
A single EC2 host keeps the system easier to demo, explain, and operate while still using real AWS services.
Database
Activity events (uploads, Lambda invocations, password actions) are persisted in the cs79d-activity-logs table and surfaced in the Logs page.
Monitoring
Dashboard, CPU alarm, health endpoint, and Lambda/DynamoDB activity make the deployment observable.
Application Architecture
Portfolio-ready request flow with routing, security, monitoring, and AWS-backed services
Syllabus Topic Coverage
How many course modules cover each topic
Course Timeline
Spring 2026 · 8 weeks · Apr – Jun
Recent Activity
Live from DynamoDB
Topics by Module
Syllabus topics per week