A collaborative, real-time code editor where users can seamlessly code together. It provides a platform for multiple users to enter a room, share a unique room ID, and collaborate on code simultaneously.
- ๐ป Real-time collaboration on code editing across multiple files
- ๐ Create, open, edit, save, delete, and organize files and folders
- ๐พ Option to download the entire codebase as a zip file
- ๐ Unique room generation with room ID for collaboration
- ๐ Comprehensive language support for versatile programming
- ๐ Syntax highlighting for various file types with auto-language detection
- ๐ Code Execution: Users can execute the code directly within the collaboration environment
- โฑ๏ธ Instant updates and synchronization of code changes across all files and folders
- ๐ฃ Notifications for user join and leave events
- ๐ฅ User presence list with online/offline status indicators
- ๐ฌ Real-time group chatting functionality
- ๐ฉ Real-time tooltip displaying users currently editing
- ๐ก Auto suggestion based on programming language
- ๐ Option to change font size and font family
- ๐จ Multiple themes for personalized coding experience
- ๐จ Collaborative Drawing: Enable users to draw and sketch collaboratively in real-time
You can view the live preview of the project here.
-
Fork this repository: Click the Fork button located in the top-right corner of this page.
-
Clone the repository:
git clone https://github.com/<your-username>/Code-Sync.git
-
Set .env file: Inside the client and server directories rename the
.env.example
file to.env
and set:Frontend:
VITE_BACKEND_URL=<your_server_url>
Backend:
PORT=3000
-
Install dependencies:
npm install # Run in both client and server directories
-
Start the servers:
Frontend:cd client npm run dev
Backend:
cd server npm run dev
-
Access the application:
http://localhost:5173/
-
Install Docker Desktop:
- Download and install Docker Desktop from https://www.docker.com/products/docker-desktop/
- Verify installation:
docker --version
-
Pull Docker Images:
# Pull Backend Image docker pull chandankumar55/code_sync-backend:tagname # Pull Frontend Image docker pull chandankumar55/code_sync-frontend:tagname
-
Run Docker Containers:
# Run Backend Container (Port 3000) docker run -p 3000:3000 chandankumar55/code_sync-backend:tagname # Run Frontend Container (Port 5173) docker run -p 5173:5173 chandankumar55/code_sync-frontend:tagname
-
Access the application:
http://localhost:5173/
- Admin Permission: Implement an admin permission system to manage user access levels and control over certain platform features.
We welcome contributions to make Code Sync even better! Follow the contribution guidelines to get started.
If you find this helpful or valuable, please consider ๐ starring the repository. It helps us gain visibility and encourages further development.
This project is licensed under the MIT License.
Special thanks to:
-
EMKC for providing the Piston API:
-
Tldraw contributors:
Sahil Atahar |
|