{"id":13649403,"url":"https://github.com/felipeleivav/yboard","last_synced_at":"2025-04-22T14:31:37.179Z","repository":{"id":40623028,"uuid":"483903356","full_name":"felipeleivav/yboard","owner":"felipeleivav","description":"Yboard is a multiplayer desktop-like workspace based on Yjs","archived":false,"fork":false,"pushed_at":"2023-03-15T22:31:38.000Z","size":1791,"stargazers_count":347,"open_issues_count":2,"forks_count":13,"subscribers_count":8,"default_branch":"main","last_synced_at":"2024-04-14T03:11:45.745Z","etag":null,"topics":["multiplayer","realtime","workspace","yjs"],"latest_commit_sha":null,"homepage":"https://yboard.lol","language":"Vue","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/felipeleivav.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2022-04-21T04:19:10.000Z","updated_at":"2024-04-02T13:20:20.000Z","dependencies_parsed_at":"2024-01-14T11:00:33.526Z","dependency_job_id":"4a069c43-7be0-42b4-93ab-3b30d40ffae5","html_url":"https://github.com/felipeleivav/yboard","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/felipeleivav%2Fyboard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/felipeleivav%2Fyboard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/felipeleivav%2Fyboard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/felipeleivav%2Fyboard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/felipeleivav","download_url":"https://codeload.github.com/felipeleivav/yboard/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250258991,"owners_count":21401017,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["multiplayer","realtime","workspace","yjs"],"created_at":"2024-08-02T01:05:00.047Z","updated_at":"2025-04-22T14:31:32.155Z","avatar_url":"https://github.com/felipeleivav.png","language":"Vue","funding_links":[],"categories":["Vue"],"sub_categories":[],"readme":"# Yboard\n\nYboard is a multiplayer desktop-like workspace.\n\nIt's based on the awesome CRDT implementation [Yjs](https://github.com/yjs/yjs) (hence the Y).\n\nYboard's intention is to explore how we interact with applications when (most of) the controls reflect a shared state among multiple peers.\n\n[Try online demo.](https://yboard.lol)\n\n![gif demo](https://i.imgur.com/RIkEKWi.gif)\n\n## ⚙️ How it works\n\nYboard is a frontend-only project. Only requisite is a [websocket server](https://github.com/yjs/y-websocket).\n\nThis means a couple of things:\n\n- Yboard directly connects to websocket server\n\n- There is no authentication mechanisms nor additional backend logic implemented\n- All the rooms are publicly accessible (only protected by a random unique id, thanks [nanoid](https://github.com/ai/nanoid))\n- Since a room is basically a [shared document](https://docs.yjs.dev/api/y.doc), any user could eventually rewrite the whole document by writing their own client application\n\nSo please don't use YBoard for highly sensitive data or production environments.\n\nThis is experimental software, use it for fun and collaboration with your friends.\n\n## 🎁 What's inside?\n\nYboard consists of a set of minimalist applications where multiple users can interact in real time:\n\n- **TODO** - task manager\n- **NOTES** - notes manager\n- **KANBAN** - very simple kanban\n- **LINKS** - bookmark manager\n- **CHAT** - talk \u0026 alert users\n- **TIMER** - synchronized timer\n- **SPOTIFY** - embedded spotify player w/ synchronized playlists\n- **DRAW** - a drawable whiteboard\n\n## 🖥 Set up local environment\n\n```sh\n# clone \u0026 setup project\ngit clone git@github.com:felipeleivav/yboard.git\ncd yboard\nnpm install\n\n# run project\nnpm run serve\n\n# execute yjs websocket server\n./run-yws.sh\n```\n\n## 📝 How to write an app\n\nWIP :)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffelipeleivav%2Fyboard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffelipeleivav%2Fyboard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffelipeleivav%2Fyboard/lists"}