https://github.com/threepointone/partyserver
PartyKit, for Workers
https://github.com/threepointone/partyserver
Last synced: about 1 month ago
JSON representation
PartyKit, for Workers
- Host: GitHub
- URL: https://github.com/threepointone/partyserver
- Owner: threepointone
- License: mit
- Created: 2024-05-27T21:40:55.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2025-03-28T18:17:09.000Z (about 2 months ago)
- Last Synced: 2025-04-13T04:55:46.311Z (about 1 month ago)
- Language: TypeScript
- Size: 2.89 MB
- Stars: 579
- Watchers: 10
- Forks: 24
- Open Issues: 21
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## 🎈 PartyServer
_Much like life, this is a Work in Progress._
Libraries / Examples / Documentation for building real-time apps (and more!) with [Cloudflare Workers](https://workers.cloudflare.com/). Powered by Durable Objects, Inspired by [PartyKit](https://www.partykit.io/).
This is the main repository for PartyServer. It contains the following packages:
[PartyServer](/packages/partyserver/README.md) - The core library for building real-time applications with Durable Objects. This library enhances a standard Durable Object to make it easier to work with WebSockets, as well as adding some additional features like lifecycle hooks and broadcasting.
[PartySocket](/packages/partysocket/README.md) - A library for working with WebSockets. It features reconnections, buffering, resilience, and more.
[Y-PartyServer](/packages/y-partyserver/README.md) - A library that adds Yjs support to PartyServer. Yjs is a CRDT library that allows for real-time collaborative editing. This library exposes a base class extending PartyServer that adds Yjs support, with utility hooks for loading/saving Yjs documents from any external storage.
[🥖 partysub](/packages/partysub/README.md) - A library for doing pubsub at scale with PartyServer. It lets you configure a "room" to be backed by N separate Durable Object instances, and a strategy for spreading the load across the world concentrated in configurable locations.
[partysync](/packages/partysync/README.md) - An experimental library to synchronise state from a Durable Object to a client.
[⏱️ partywhen](/packages/partywhen/README.md) - A library for scheduling tasks at scale.
[hono-party](/packages/hono-party/README.md) - A middleware for Hono to handle PartyServer requests.
### Fixtures
We have a set of small examples for PartyServer in the [`fixtures`](/fixtures/) directory. These are small, self-contained examples that demonstrate how to use PartyServer in different ways. We will expand this repository with broader (and deeper!) examples in the future.
Reach out to [@threepointone on twitter](https://twitter.com/threepointone) or the [Cloudflare Workers Discord](https://discord.com/invite/cloudflaredev) to follow progress, and if you have any questions or feedback.