CodeSync is a real-time collaborative coding platform designed to transform how developers, students, and educators connect and create. Built with modern web technologies, it offers a seamless experience for teams to collaborate from anywhere, anytime.
- Real-time collaborative code editing with live synchronization
- Multi-language support with syntax highlighting
- Secure authentication via email, Google, and Facebook
- Room management with optional passwords
- Interactive dashboard for session and room management
- Built-in chat system for team communication
- Auto-reload during development for a smooth workflow
- Node.js
- Express.js
- Socket.IO
- EJS (Embedded JavaScript Templates)
- MongoDB
- Mongoose
- Express-validator
- Moment.js
- Nodemon
CodeSync/
├── .vscode/ # VSCode configuration
├── backend/ # Backend logic
│ ├── config/ # Configuration files
│ ├── middleware/ # Middleware functions
│ ├── models/ # Mongoose schemas
│ ├── routes/ # API routes
│ ├── .env # Environment variables
│ └── server.js # Main server file
├── frontend/ # Frontend assets
│ ├── assets/ # Static assets
│ │ ├── css/ # CSS files
│ │ ├── imgs/ # Images
│ │ ├── js/ # JavaScript files
│ │ ├── uploads/ # Uploaded files
│ │ └── webfonts/ # Web fonts
│ └── pages/ # HTML templates
│ └── index.html # Main HTML file
├── node_modules/ # Node.js dependencies
├── webfonts/ # Additional font files
├── .gitignore # Git ignore file
├── package-lock.json # Dependency lock file
├── package.json # Project metadata
└── README.md # Project documentation
- Node.js installed (v16+ recommended)
- MongoDB installed and running
git clone https://github.com/Abdo-Hammam/CodeSync.git
cd codesync
npm installcd backend
node app.jsVisit: http://localhost:3000
Discover CodeSync’s vision with a striking landing page designed to inspire collaboration.
Create an account with ease using the intuitive sign-up interface.
Securely access CodeSync with email, Google, or Facebook authentication.
Manage rooms, join sessions, and explore quick actions from a dynamic home page.
Set up a new coding room with a unique ID and optional password.
Join existing rooms using a room ID and optional password.
View account details, joined sessions, and room history with a personalized profile.
Experience real-time coding with a clean editor, run button, and output panel for instant feedback.
This project was developed by a dedicated team:
- Abd El-Rahman Hammam – Team Leader, Frontend Developer, and partial Backend Contributor
- Abdullah Mohsen – Backend Developer
- Omar FathAllah – Database Designer and Administrator
Thanks to everyone who contributed to making this project a success 🙌
Developed by: Abd El-Rahman Hammam
Email: Mail Me
GitHub: Github Link