SkillAgentSearch skills...

CodeRoom

An online compiler with real time collabration feature

Install / Use

/learn @Adarsha16/CodeRoom
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<h1> <img src="https://capsule-render.vercel.app/api?type=transparent&height=300&text=CODE%20ROOM&textBg=false&reversal=false&fontColor=238579&fontSize=75&fontAlign=50&animation=twinkling&strokeWidth=5&stroke=238579&desc=Code%20as%20your%20neurons%20fire.&descSize=20"/> </h1>

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<br>

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 = <me@gmail.com>

#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 <br>

-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<br> Adarsha<br> Pranaya-sht<br> XGPher35<br>

This is Third semister project.<br>

View on GitHub
GitHub Stars4
CategoryDevelopment
Updated1y ago
Forks2

Languages

JavaScript

Security Score

60/100

Audited on Nov 5, 2024

No findings