Thanks to visit codestin.com
Credit goes to github.com

Skip to content
 
 

Repository files navigation

Code Room is an unbelievably fast online code editor and compiler which allows you for real time collaboration.

Features

  • Multi-language Support: Compile code in multiple programming languages.
  • Monaco Editor: Enjoy the same code editing experience as in VS Code, with features like indentation, syntax highlighting, and IntelliSense.
  • Real-time Collaboration: Code together with others in real-time.
  • Integrated Chat: Communicate seamlessly with your fellow collaborators.
  • Supported Language : JavaScript, Python, C++

Get Started

Ensure NodeJS and MySQL is installed on your machine

git clone <link of this repo>
cd CodeRoom

To start React App

npm install
npm run dev

To start server

cd server
npm install
npm start

On you favourite browser

http://localhost:5173/

voilà! You are ready to swing.

Under the hood

  • React In front end
  • Nodejs and Express server on backend
  • MySQL for Database Management
  • Tailwind for Style
  • Password Encryption using bcrypt hashing
  • Authentication using JWT, with ft. like OTP using NodeMailer.
  • Monaco Editor for code IntelliSense and edit
  • Language specific compiler for code compilation using docker
  • (Language - Compiler) = Javascript - Nodejs(runtime), Python - python3, C++ - gcc
  • Socket.io for websocket (Real time communication)
  • Terniary Operator

Before you Start

  • Server is running on port : 5001

Make sure your .env file inside server directory looks something like this:

#For MYSQL Database
DB_HOST = localhost
DB_USER = root
DB_PASS = <your password>
DB_NAME = users
DB_TABLE_NAME = userstable

#For OTP Database
DB_OTP_TABLE_NAME = otpverification
OTP_EMAIL_SENDER = <[email protected]>

#For OTP Nodemailer
OTP_APP_PASSWORD = <Application password>
OTP_EXPIRY = 5* #In mins

#For json web token
JWT_SECRET = <IHaveNoSecrets>
JWT_LIFETIME = '1hr'


#For docker setup
PYTHON_TAG = 'sha256:cf2c...'
JS_TAG = 'sha256:cfa2266c...'
CPP_TAG = 'sha256:2321d3c...'



How to Setup Docker

-Build an docker image, "docker build <path where dockerfile is present>"
-Copy the image tag of particular image
-Paste it in the .env file located inside server directory

Developers

Ostrich-egg
Adarsha
Pranaya-sht
XGPher35

This is Third semister project.

About

yay

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages