Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/akash-singh112/oj

I created a full-stack Online Judge for students' code submission, which gives a verdict based on code correctness.
https://github.com/akash-singh112/oj

axios chakra-ui expressjs mongo nodejs online-judge reactjs

Last synced: about 1 month ago
JSON representation

I created a full-stack Online Judge for students' code submission, which gives a verdict based on code correctness.

Awesome Lists containing this project

README

        

# CodeCat Online Judge

This is a full-stack Online Judge for students' code submission, which gives a verdict based on code correctness. This project involves a good amount of frontend and backend knowledge to complete, so I realized this is something I could build to put my skills to good practice.

### Live Link: [CodeCat OJ](https://ojcat.xyz)

## Requirements

* NodeJS (version 20.14.0)
* Visual Studio Code (latest version is preferred)
* Git (latest version is preferred)
* npm (version 10.8.1)

## Installation and Usage
Use the package manager [npm](https://www.npmjs.com/) to install subsequent modules and frameworks.

### Open the cloned repository in VS code and follow these steps in order:

* Open two separate terminals and make sure you are in the root folder of this project
* Go to the backend folder in one terminal and to the frontend in another
* Run the following command in both terminals:

```bash
npm install
npm run dev
```

* #### Now you can access the app at this URL: [http://localhost:1099](http://localhost:1099)

## Technologies used

* React
* CSS
* Express
* MongoDB
* Mongoose
* Prominent libraries used
* @chakra-ui/react
* @monaco-editor/react
* axios
* prismjs
* react-checkmark
* react-copy-to-clipboard
* react-router-dom
* react-syntax-highlighter
* react-icons
* bcryptjs
* dotenv
* cors
* jsonwebtoken
* mongoose

Other libraries are used, but listing them all would take up a lot of space.

# Product preview
* Register Page

![Register Page](https://github.com/akash-singh112/OJ/blob/master/online_judge/preview%20img/register-page.png)
* Login Page

![Login](https://github.com/akash-singh112/OJ/blob/master/online_judge/preview%20img/login.png)
* OJ Homepage

![OJ_homepage](https://github.com/akash-singh112/OJ/blob/master/online_judge/preview%20img/OJ-homepage.png)
* Change Password

![Change Password](https://github.com/akash-singh112/OJ/blob/master/online_judge/preview%20img/change-pass.png)
* Problem Page

![Problem Page](https://github.com/akash-singh112/OJ/blob/master/online_judge/preview%20img/problem-page.png)

#### To see all preview images, go to [preview img](https://github.com/akash-singh112/OJ/tree/master/online_judge/preview%20img)

## Suggestions
Feel free to drop any suggestions at the contact links mentioned at the end.

## Contributions
Pull requests are welcome. For major changes, please open an issue first
to discuss what you would like to change.

## Acknowledgements
* [Bhawesh Garg](https://github.com/bhavesh1129)
* [Dev Garg](https://github.com/SATZEL02)

## Contact me
* GitHub: [akash-singh112](https://github.com/akash-singh112)
* Linkedin: [Akash Singh](https://linkedin.com/in/akashsinghiitr)
* Email: [email protected]