Skip to content

Interactive Ed-Tech learning platform with coding challenges, forums, and real-time evaluation using AWS cloud services.

License

Notifications You must be signed in to change notification settings

vishal-n2403/Study-DevLab-AWS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

19 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

πŸš€ DevLab β€” Innovative Code Evaluation & Learning Platform

Cloud Frontend Styling Backend Evaluator ML Reco Database Storage CI/CD License

DevLab is an AWS-powered Ed-Tech platform for learning modern web development with interactive coding challenges, real-time feedback, adaptive recommendations, and a community forum. It combines a React front-end (with Monaco editor) and a Node/Express API with a headless Chrome (Puppeteer) evaluator, plus a Flask microservice for recommendationsβ€”scalable on AWS.


πŸ“– About

DevLab enables learners to practice HTML, CSS, JavaScript, React, and Tailwind through hands-on challenges. Submissions are executed and validated in an isolated headless browser; learners receive instant feedback, scores, and personalized resources. A simple forum fosters collaboration and Q&A.


🌟 Key Features

  • πŸ‘€ Auth & Profiles β€” JWT-based auth, user profiles, role flags (user/admin).
  • πŸ§‘β€πŸ’» Monaco Editor Playground β€” Real-time code editing with preview.
  • πŸ§ͺ Instant Evaluation β€” Headless Chrome (Puppeteer) runs custom validation against learner output.
  • πŸ† Challenges & Leaderboard β€” Track progress, attempts, and scores.
  • 🎯 Adaptive Recommendations β€” Flask microservice returns learning resources based on history.
  • πŸ’¬ Discussion Forum β€” Post questions, share tips, and discuss solutions.
  • πŸ“Š Analytics β€” Progress and usage insights (expandable).
  • ☁️ Cloud-Native β€” S3 for assets/CSV, DynamoDB for users/posts, EB/EC2 for API, Amplify for frontend.
  • πŸ” Security-First Defaults β€” Env-based secrets, IAM roles, least privilege.

Note: Current evaluator runs on Node + Puppeteer. A serverless/Lambda move is on the roadmap.


🧩 Architecture

DevLab AWS Architecture
High-level AWS layout for DevLab.


πŸ–ΌοΈ Demo Walkthrough

Click any image to view full size. This gallery presents the product flow from sign-up to results.

Registration
1) Registration β€” Create an account with basic details.
Login
2) Login β€” Secure access to your learning workspace.
Landing
3) Landing β€” Welcome page with quick actions & navigation.
Challenges List
4) Challenges (I) β€” Browse curated tasks by topic & difficulty.
Challenge Details
5) Challenges (II) β€” View requirements, hints & scoring rules.
Forum
6) Forum β€” Discuss problems, share tips, and get help.
Coding Workspace
7) Coding Workspace β€” Monaco editor with live preview & tests.
Resource Collection
8) Resource Collection β€” Add optional study links for guidance.
Results
9) Results β€” Instant feedback, pass/fail status, and next steps.

πŸ›  Tech Stack

React Vite Tailwind CSS Monaco Editor
Node.js Express JWT
Puppeteer Flask
DynamoDB Amazon S3
Elastic Beanstalk AWS Amplify CloudWatch CloudTrail IAM


Frontend β€” React, Vite/CRA, TailwindCSS, Monaco Editor
  • SPA with route guards and layout shells
  • Monaco editor playground with live preview
  • Utility-first styling via TailwindCSS
Backend API β€” Node.js, Express.js, JSON Web Tokens
  • REST endpoints for auth, posts, attempts
  • JWT-based sessions and role flags
  • Input validation, rate limiting, CORS
Evaluator β€” Puppeteer (headless Chrome)
  • Runs user HTML/CSS/JS in sandboxed headless Chrome
  • Applies whitelisted validation scripts; returns structured results
  • Timeouts and resource limits for safety
ML Recommender β€” Flask (Python)
  • Consumes anonymized attempt history & skill tags
  • Returns ranked resources from S3-backed catalog
  • Pluggable for embeddings or CF later
Data β€” DynamoDB & Amazon S3
  • users, posts, attempts tables (GSIs for user/challenge lookups)
  • S3 for static assets, CSV datasets, screenshots
Infra β€” Elastic Beanstalk, Amplify, CloudWatch/CloudTrail, IAM
  • EB for Node API & Flask; Amplify for static frontend
  • CloudWatch logs/metrics; CloudTrail auditing
  • IAM roles (least privilege) for DynamoDB/S3 access
🧩 Layer πŸ› οΈ Stack
Frontend React Β· Vite/CRA Β· TailwindCSS Β· Monaco Editor
Backend API Node.js Β· Express.js Β· JWT
Evaluator Puppeteer (headless Chrome)
ML Recommender Flask (Python)
Data DynamoDB (Users, Posts, Attempts) Β· Amazon S3 (assets/CSV)
Infra Elastic Beanstalk (API & Flask) Β· Amplify (Frontend) Β· CloudWatch/CloudTrail Β· IAM

πŸ“š References

Research & Articles

Some resources (Springer, IEEE Xplore) may require institutional access.


AWS Services Documentation

About

Interactive Ed-Tech learning platform with coding challenges, forums, and real-time evaluation using AWS cloud services.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages