Skip to content

lendrik-kumar/Live-Doc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

21 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Live-Doc: Real-Time Collaborative Whiteboard πŸ“

##Deployed At https://live-doc-kappa.vercel.app/

Live-Doc is a real-time collaborative whiteboarding application that allows multiple users to join a shared room and draw together simultaneously.
It's built with a modern tech stack including React for the frontend and Node.js with Socket.IO for the backend, providing a seamless and interactive experience.


✨ Features

  • Real-Time Collaboration: Changes made by one user are instantly visible to all other users in the same room.
  • Room-Based Sessions: Users can create a new room with a unique ID or join an existing one.
  • User Presence: See a live list of all users currently connected to the room.
  • Persistent User Info: Remembers your username and the last Room ID you used, making it easier to rejoin sessions.
  • Copy Room ID: Easily share the room link with others with a single click.
  • Toast Notifications: Get notified when users join or leave the room.
  • Responsive Design: A clean and modern UI that works well on different screen sizes.

πŸ› οΈ Tech Stack

Frontend

  • React – JavaScript library for building user interfaces.
  • Tldraw – Powerful open-source library for creating infinite canvas applications.
  • Socket.IO Client – Handles real-time, bidirectional communication with the server.
  • Zustand – Small, fast, and scalable state-management solution.
  • React Router – For client-side routing and navigation.
  • Tailwind CSS – Utility-first CSS framework for rapid UI development.
  • React Hot Toast – For clean and simple notifications.

Backend

  • Node.js – JavaScript runtime environment for the server.
  • Express – Minimal and flexible Node.js web application framework.
  • Socket.IO – Enables real-time, event-based communication.
  • Nodemon – Automatically restarts the Node.js server on file changes.

πŸš€ Getting Started

Follow these instructions to get a copy of the project up and running on your local machine.

Prerequisites

  • Node.js (v14 or later)
  • npm or yarn package manager

Installation & Setup

1️⃣ Clone the repository

git clone https://github.com/lendrik-kumar/Live-Doc.git
cd Live-Doc

2️⃣ Setup the Backend
cd backend
npm install


Create a .env file inside the backend directory:

PORT=8000


Start the backend server:

npm start


The backend will be running at: http://localhost:8000

3️⃣ Setup the Frontend
cd ../frontend
npm install


Create a .env.local file inside the frontend directory:

VITE_NODE_URL=http://localhost:8000


Start the frontend development server:

npm run dev


The application will be available at: http://localhost:5173
(or another port if 5173 is busy)

πŸ“‚ Project Structure
Live-Doc/
β”œβ”€β”€ backend/
β”‚   β”œβ”€β”€ node_modules/
β”‚   β”œβ”€β”€ package.json
β”‚   └── index.js        # Main server file
└── frontend/
    β”œβ”€β”€ public/
    β”œβ”€β”€ src/
    β”‚   β”œβ”€β”€ components/ # Reusable React components
    β”‚   β”œβ”€β”€ lib/        # Socket.IO client setup
    β”‚   β”œβ”€β”€ pages/      # Page components (Home, Editor)
    β”‚   β”œβ”€β”€ utils/      # Zustand store
    β”‚   β”œβ”€β”€ App.jsx
    β”‚   └── main.jsx
    β”œβ”€β”€ package.json
    └── vite.config.js


🀝 Contributing

Contributions are welcome! πŸŽ‰
If you have suggestions for improvements or want to fix a bug, feel free to create an issue or submit a pull request.

Fork the project

Create your Feature Branch

git checkout -b feature/AmazingFeature


Commit your changes

git commit -m "Add some AmazingFeature"


Push to the branch

git push origin feature/AmazingFeature


Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License – see the LICENSE file for details.

πŸ™ Acknowledgments

Made with ❀️ by Sanket
Inspired by the need for simple, real-time collaboration tools.


---

If you want, I can also make this **GitHub-friendly with badges** and a **preview screenshot**

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published