Collaborate in real-time with integrated coding, whiteboard brainstorming, and seamless file sharing. Elevate your coding interviews and team projects in a dedicated space designed for developers. Join us in building the future of developer collaboration!
- Real-time Collaboration: Work on projects with your team in real-time, complete with an interactive coding environment.
- Whiteboard Integration: Brainstorm ideas visually with an integrated whiteboard feature.
- File Sharing: Seamlessly upload, download, and share files within your project.
- Dedicated Spaces: Create rooms for focused collaboration with dynamic configurations tailored for developers.
- Node.js: Install the latest LTS version of Node.js from Node.js Official Website.
- Docker: Ensure Docker is installed and running on your system. Follow the installation guide on Docker's Website.
- Redis: Redis should be installed and running. Use Redis Installation Guide.
- PostgreSQL: Install and configure PostgreSQL for database management. Visit PostgreSQL Downloads.
- Clone the repository:
git clone https://github.com/sikehish/SyncLab.git
cd SyncLab
- Install dependencies for both frontend and backend:
cd frontend
npm install
cd ../backend
npm install
- Set up environment variables:
- Rename
.env.template
to.env
and.env.local.template
to.env.local
. - Fill in the required values as per the following:
- Rename
- Start Redis and PostgreSQL services.
- Start the frontend and backend servers:
# In the frontend directory
cd frontend
npm run dev
# In the backend directory
cd ../backend
npm start
- Open your browser and navigate to:
- Frontend:
http://localhost:3000
- Backend:
http://localhost:5000
- Frontend:
- Frontend: React.js, Tailwind CSS
- Backend: Node.js, Express, Docker
- Database: PostgreSQL, Redis
- Authentication: Clerk for user authentication
- Realtime Communication: Agora SDK
We welcome contributions from the community! Feel free to fork the repository and submit a pull request with your changes.
This project is licensed under a custom license. See the LICENSE
file for details.