cd ..
🏆 Competitive Programming Platform
xForces
Next.jsTypeScriptPostgreSQLPrismaRedisDocker
xForces is a modern alternative to traditional competitive programming websites. It provides a sleek, fast, and feature-rich interface for hosting and participating in algorithmic coding contests.
Tech Stack Evolution
Originally built with a Next.js frontend and a Node.js/Bun execution worker, xForces later required a much more robust execution engine to handle malicious submissions and high concurrency. This led to the creation of IronJudge, which is now integrated as the core execution backend for xForces.
Key Features
- Real-Time Execution: Users can write code in the browser using the integrated Monaco Editor, submit it, and receive instant feedback (Accepted, Wrong Answer, Time Limit Exceeded, Memory Limit Exceeded).
- Contest System: Administrators can create time-bound contests, assign problems, and generate live leaderboards based on the ICPC or standard Codeforces scoring models.
- User Dashboard: A comprehensive profile system that tracks a user's rating changes over time, problems solved, and recent submissions.
- Database Architecture: Uses PostgreSQL via Prisma ORM to efficiently store thousands of problems, test cases, and millions of user submissions.
The Problem Solving Experience
The platform emphasizes speed. The split-pane UI allows users to read the problem statement while coding simultaneously. Test cases are evaluated concurrently to minimize wait times, providing a seamless "flow state" for competitive programmers.