Skip to content
felipeleivav  /   yboard  /  
/ yboard Public
  • Watch 4

    Notifications

    Get push notifications on iOS or Android.
  • Fork 3

Yboard is a multiplayer desktop-like workspace based on Yjs

License

Watch

Notifications

Get push notifications on iOS or Android.
Open in github.dev Open in a new github.dev tab

felipeleivav/yboard

main
Switch branches/tags
Go to file
Add file
Code

Latest commit

698df6a 22 hours ago
698df6a

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
3 days ago
src
2 days ago
wow
2 months ago
22 hours ago
3 months ago
3 months ago
wow
2 months ago
3 months ago

Yboard

Yboard is a multiplayer desktop-like workspace.

It's based on the awesome CRDT implementation Yjs (hence the Y).

Yboard's intention is to explore how we interact with applications when (most of) the controls reflect a shared state among multiple peers.

Try online demo.

โš™๏ธ How it works

Yboard is a frontend-only project. Only requisite is a websocket server.

This means a couple of things:

  • Yboard directly connects to websocket server

  • There is no authentication mechanisms nor additional backend logic implemented

  • All the rooms are publicly accessible (only protected by a random unique id, thanks nanoid)

  • Since a room is basically a shared document, any user could eventually rewrite the whole document by writing their own client application

So please don't use YBoard for highly sensitive data or production environments.

This is experimental software, use it for fun and collaboration with your friends.

๐ŸŽ What's inside?

Yboard consists of a set of minimalist applications where multiple users can interact in real time:

  • TODO - task manager
  • NOTES - notes manager
  • KANBAN - very simple kanban
  • LINKS - bookmark manager
  • CHAT - talk & alert users
  • TIMER - synchronized timer
  • SPOTIFY - embedded spotify player w/ synchronized playlists
  • DRAW - a drawable whiteboard

๐Ÿ–ฅ Set up local environment

# clone & setup project
git clone git@github.com:felipeleivav/yboard.git
cd yboard
npm install

# run project
npm run serve

# execute yjs websocket server
./run-yws.sh

๐Ÿ“ How to write an app

WIP :)

About

Yboard is a multiplayer desktop-like workspace based on Yjs

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published