Sure! Iβd like to talk about my project called GiggleCode, which is a full-stack Online Coding Judge System built during my externship at Algo University.
The core idea behind GiggleCode is to simulate a Codeforces/LeetCode-style platform, where users can:
- Log in, browse problems, and submit code in C, C++, Java, or Python.
- Their code is executed, evaluated against hidden & visible test cases.
- The system returns verdicts like Accepted, Wrong Answer, Runtime Error, or Time Limit Exceeded.
- There's also a leaderboard, streak tracker, progress dashboard, and a complete admin panel for managing problems, test cases, and user analytics.
This project was built to replicate a production-grade Online Judge system under real-world conditions β supporting concurrent users, safe code execution, scalable architecture, and a clean UI.
I chose this because:
- I wanted to apply full-stack concepts end-to-end: Auth, APIs, secure compilation, dashboards.
- It touches on critical concepts like OS process control, containerization, file systems, and backend orchestration β all of which help understand how large systems like LeetCode or HackerRank actually work.
- And also, it's just fun and challenging to build something devs like us actually use daily!
| Layer | Stack | Why |
|---|---|---|
| Frontend | ReactJS + TailwindCSS | For fast, reactive SPA + utility-first styling |
| State Mgmt | Context API | Lightweight and modular for auth, problem states |
| Backend | Node.js + Express.js | Event-driven, non-blocking, perfect for I/O-heavy operations |
| Database | MongoDB + Mongoose | Flexible schemas for problems, test cases, users, submissions |
| Code Execution | Node child_process, file system |
Direct control over compiling & executing user code securely |
| Deployment | Docker + AWS EC2 | Containerized backend for consistency and isolation |
| Hosting | Vercel for frontend | Quick CI/CD and global edge deployment |