Online Judge(MEAN)MongoDB, Express, Angular, and Node.js
A web application for online judge(Algorithm questions), built with MEAN stack.
1. Online Judge
This application is used to solve algorithm questions. You can submit the solution to see if it passes all test cases. Below are the available features.
- Token Based Authentication - Register, Login, Auto Login, User Profile, Reset Password, etc.
- User Management - Create, Update, Delete user.
- Question Management - Create, Update, Delete question.
- Database Management - Import and Export data with csv files for users, questions and submissions.
- Judging System - Judging Engine, Solution Template, Submission History, Multi-programming language support.
- Programming Languages - Three languages are currently supported, including Java, Javascript and Python.
- UI - RichTextEditor, Code Editor, Progress Bar, Loading Image are applied.
2. Demo
Three available demos:
Live Demo on Netlify(CI):
https://online-judge.netlify.com/Live Demo on Heroku(CI):
https://online-judge-mean.herokuapp.com/Live Demo on Azure:
https://online-judge.azurewebsites.net/
Note: The demo websites may be slow when you access them for the first time. Be patient!
Try it out on any live demo website with the following accounts:
- Regular User: demo / 123456
- Administrator: admin / 123456
3. UI
Home page. Click the ‘Questions’ menu. Create a new account. After login, you can select one question to solve, and submit the solution. If the solution is passed all of the test cases, the submission is successful. Or the solutions is failed by some of the test cases. Switch to ‘Submissions’ to view all your submissions. Click on the ‘Accepted’ or ‘Wrong Answer’ link to view the submission in details.
4. Under the Hood
Read tutorial Building Online Judge Application With MEAN Stack and Online Judge - Judging System to learn how this online judge app is built.