Skip to content

A platform for users to sign up and run code in a secure, isolated docker container environment. Collaborate with other users in real-time using the editor.

Notifications You must be signed in to change notification settings

PradeepKundekar0101/CodeRunner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Full-Stack Web Development Project

This project is a comprehensive full-stack web application built with modern technologies to deliver a robust, scalable, and user-friendly platform. Below is an overview of the key features and the tech stack used.

Features

1. Frontend Development (ReactJS)

  • The user interface is developed using ReactJS, ensuring a seamless and interactive user experience.
  • Secure user authentication is implemented using email and password.

2. Backend Development (NodeJS + MongoDB)

  • The backend is built with NodeJS for managing server-side logic, while MongoDB is used for database management.
  • Express is used to streamline the routing and middleware system.

3. Multi-Language Code Execution and Docker Integration

  • Users can write and execute code in five different programming languages: Java, C, C++, Python, and JavaScript.
  • Each code execution runs inside an isolated Docker container, ensuring security and scalability.

4. Message Queue and Job Scheduling

  • BullMQ is used to schedule and manage asynchronous code execution jobs.
  • A robust job queue system enhances application responsiveness and handles large volumes of code execution tasks efficiently.

5. Real-Time Collaboration and WebSocket Integration

  • A real-time collaboration feature allows multiple participants to code together in a shared environment.
  • Room creation and password protection are implemented using WebSocket, ensuring secure and interactive user sessions.

6. Tech Stack Diversity and CI/CD Implementation

  • Tanstack Query is leveraged for efficient data fetching and mutation handling, improving data management throughout the app.
  • TailwindCSS is used for responsive, mobile-first design and a modern user interface.
  • Continuous Integration/Continuous Deployment (CI/CD) is managed with Jenkins, ensuring smooth deployment processes.

Tech Stack

  • Frontend: ReactJS, TailwindCSS
  • Backend: Node.js, Express, MongoDB
  • Code Execution: Docker, BullMQ, WebSockets
  • CI/CD: Jenkins
  • Other Tools: Tanstack Query, Docker

Demo

Check out a demo of the application below:

https://www.youtube.com/watch?v=Z_RTv4PCIa0&t=15s


Feel free to clone this repository and explore the project further. Contributions and feedback are welcome!

About

A platform for users to sign up and run code in a secure, isolated docker container environment. Collaborate with other users in real-time using the editor.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published