π§ SketchBoard β The Open-Source Collaborative Whiteboard A next-generation Excalidraw-style visual collaboration platform β built for speed, openness, and real-time creativity.
SketchBoard is an open-source, browser-based visual collaboration tool that enables teams, developers, designers, and educators to sketch, diagram, and brainstorm β together, in real time.
Inspired by Excalidraw, but reimagined for extensibility, offline-first workflows, and privacy-friendly real-time sync, SketchBoard blends artistic freedom with technical precision.
- β‘ Real-Time Collaboration β powered by CRDTs (Yjs / Automerge)
- π¨ Modern Canvas Engine β freehand drawing, shapes, text, connectors, grouping
- πΎ Offline-First β works seamlessly without internet
- π§© Plugin System β extend SketchBoard with custom shapes, tools, exporters
- π‘οΈ Privacy-Focused β your data stays local unless you share it
- π¦ Export Options β PNG, SVG, PDF, JSON
- π Extensible UI/UX β built with React, TypeScript, TailwindCSS
| Layer | Technologies |
|---|---|
| Frontend | React, TypeScript, Vite, TailwindCSS, Canvas API |
| Collaboration | Yjs (CRDT), WebSockets, IndexedDB |
| Backend (optional) | Node.js, Express / Fastify, Redis, PostgreSQL |
| Testing & DevOps | Jest, Playwright, GitHub Actions, Docker |
- Node.js β₯ 18
- pnpm / yarn / npm
- Modern browser (Chrome, Edge, Firefox, Safari)
git clone https://github.com/AbhishekMishra-OpenSource/SketchBoard.git
cd SketchBoard
pnpm install
pnpm devOpen http://localhost:5173 in your browser π
SketchBoard is a community-driven project.
Weβre building a future where visual collaboration is open, accessible, and creative β and weβd love your help β€οΈ
Ways to Contribute:
- π§βπ» Add new features or improve existing ones
- π¨ Design icons, themes, or UX interactions
- π§ Write documentation and tutorials
- π Find and fix issues
- π Share feedback and ideas in Discussions
Read our CONTRIBUTING.md and CODE_OF_CONDUCT.md before your first PR.
- Core canvas tools (pen, shapes, text)
- Real-time multi-user sessions
- Export/Import formats (PNG, SVG, JSON)
- Plugin API for developers
- Offline sync with IndexedDB
- Authentication & shared sessions
- Cloud storage (optional)
- Performance optimizations (WebGL)
Track progress in Issues & Projects.
Frontend (React + Yjs)
β
βββ Canvas Engine (Shapes, Tools, Renderer)
βββ State Manager (CRDT / Yjs)
βββ IndexedDB (Offline Persistence)
β
βββ WebSocket Sync Server (Node.js)
βββ Session Manager
βββ Document Store (PostgreSQL/Redis)
We believe collaboration tools should be open, transparent, and community-built.
Join us on our mission to democratize visual collaboration!
π¬ Discussions | π Issues | π’ Roadmap
This project is licensed under the MIT License Β© 2025 Abhishek Mishra.
See the LICENSE file for details.
Built with β€οΈ by developers for creators β inspired by Excalidraw, tldraw, and Figmaβs collaborative design systems.
βVisual thinking belongs to everyone β not just designers.β
excalidraw-clone, open-source, collaboration, react, typescript, crdt, yjs,
websockets, whiteboard, pwa, realtime, frontend, fullstack, design-tools,
innovation, devcommunity, sketchboard
β If you like this project, consider giving it a star! It really helps! β
MIT License
Copyright (c) 2025 Abhishek Mishra
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.