Skip to content

A standalone yjs server with persistence to blob storage.

License

Notifications You must be signed in to change notification settings

knownasilya/voxel

 
 

Repository files navigation

y-sweet: a Yjs server with persistence and auth

GitHub Repo stars Chat on Discord

y-sweet is an open-source server for building realtime applications on top of the Yjs CRDT library.

Features

  • Persists document data to a network filesystem or S3-compatible storage, inspired by Figma’s infrastructure.
  • Scales horizontally with a session backend model.
  • Deploys as a native Linux process, or as a WebAssembly module on Cloudflare's edge.
  • Provides document-level access control via client tokens.
  • Written in Rust with a focus on stability and performance, building on the blazing fast y-crdt library.

y-sweet stack

The y-sweet server can be used by any Yjs app, or you can use our opinionated stack to integrate Yjs and y-sweet into a Next.js app.

  • @y-sweet/sdk, a TypeScript library for interacting with y-sweet-server from your application backend.
  • @y-sweet/react, a React hooks library for building Yjs applications.
  • A debugger for exploring Yjs document and presence state.

The goal of the y-sweet stack is to give developers the end-to-end developer ergonomics they would expect from a proprietary state-sync platform, without the lock-in.

y-sweet is MIT-licensed, and was created by Drifting in Space.

Docs

Packages

Server

Package Manager Name Version Path
npm y-sweet npm js-pkg/server
crates.io y-sweet crates.io crates/y-sweet
crates.io y-sweet-core crates.io crates/y-sweet-core

Client

Package Manager Name Version Path
npm @y-sweet/sdk npm js-pkg/sdk
npm @y-sweet/react npm js-pkg/react

About

A standalone yjs server with persistence to blob storage.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 58.6%
  • TypeScript 39.7%
  • JavaScript 1.7%