GoJudge is an online judge system that streamlines coding problem-solving and evaluation. It features dynamic problem creation, multiple programming language support, and isolated code execution using Docker.
Features
- Dynamic problem creation with custom test cases.
- Support for multiple programming languages.
- Isolated code execution using Docker.
- Real-time updates on submission status.
- Efficient queue management with Redis.
- Secure and scalable architecture.
Architecture
GoJudge follows a microservices architecture, including an API server for user authentication, a worker for code execution, and a frontend built with Next.js.