Skip to content
/ Wroom Public

A sleek, dark-themed collaborative desktop editor built with Electron and FastAPI. Supports real-time editing via WebSocket, room-based sessions, and modern UI inspired by VS Code. Perfect for co-authoring code, notes, or files with no login required.

License

Notifications You must be signed in to change notification settings

Iro96/Wroom

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wroom: OpenSources Real-Time Collaborative Editor

Working Room - A sleek, dark-themed collaborative desktop editor built with Electron and FastAPI. Supports real-time editing via WebSocket, room-based sessions, and modern UI. Perfect for co-authoring code, notes, or files with no login required.

image

Issues Pytest License GitHub Repo stars

Wroom: Real-Time Collaborative Editor


🌟 Features

  • 🔁 Real-Time Collaboration — Changes appear instantly for everyone in the room
  • 🔐 Author-Based Control — Only the room creator can:
    • Copy invite link
    • Kick all members
    • Open new files (sync to all)
  • 👥 Live Editing for All — All users (including the author) can:
    • Type and edit freely
    • Receive live content from others
  • 🖥 Cross-Platform Desktop App — Built with Electron
  • 🎨 Modern UI — The newest UI with dark mode
  • 📝 File Support — Markdown, Code, and more (can have more in feature)
  • 🔌 Works Offline Locally — Run backend and frontend together without cloud

🧠 How It Works

  • Create a room → Unique room ID is generated
  • Join with room ID → Editor syncs with author's content
  • Type or paste → Changes broadcast to all others
  • Author-only Permission: Copy Room ID, Kick Members, Open File, Save file directly

🚀 Getting Started

🔧 Prerequisites

  • Python 3.8+

Requires: fastapi 0.110.1, uvicorn 0.29.0, aiofiles 23.2.1, python-multipart 0.0.9

  • Node.js (Electron frontend)

$ Clone the repository

git clone https://github.com/Iro96/Wroom.git
cd Wroom

🐍 Backend Setup

cd backend
pip install -r requirements.txt
uvicorn main:app --reload

💻 Frontend Setup (Electron)

cd electron
npm install
npm start

🧩 Information & Usage

App Workflow

Action Description
Create Room Generates a unique room ID and registers the current user as the author.
Join Room Enter an existing room ID to join as a member.
Edit Document All users can edit the document. Changes are synced in real-time.
Open File (Author only) Author can load a local file into the editor. Contents are broadcast to all users.
Save File Save the current editor content locally.
Kick All Members (Author only) Instantly removes all members from the room.
Copy Invite ID (Author only) Copies the room ID to clipboard for inviting others.
Leave Room Disconnects from the room and resets the UI.

Roles and Permission

Role Can Edit Can Open Files Can Kick Others Can Copy Room ID
Author
Member

🛡 License

Licensed under the MIT License — see LICENSE for more details.


🤝 Contributing

We welcome pull requests and feedback!
Feel free to fork this repo and submit your improvements via PR.

Note! This project is still in the works.


📈 Star History

Star History Chart


↑ Back to Top ↑

About

A sleek, dark-themed collaborative desktop editor built with Electron and FastAPI. Supports real-time editing via WebSocket, room-based sessions, and modern UI inspired by VS Code. Perfect for co-authoring code, notes, or files with no login required.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published