Skip to content

The CRDT Yjs WebSocket backend for conflict-free real-time collaboration in your app.

License

Notifications You must be signed in to change notification settings

ueberdosis/hocuspocus

Repository files navigation

Hocuspocus (Beta)

A plug & play collaboration backend based on Y.js.

Build Status Version Downloads License Chat Sponsor

Documentation

The full documentation is a available on hocuspocus.dev/introduction.

Feedback

Send all your questions, feedback and bug reports to humans@hocuspocus.dev or create an issue here.

Usage

The following example is a example setup you need to start a WebSocket server. By default, it’s listening on http://127.0.0.1 (or prefixed with the WebSocket protocol on ws://127.0.0.1):

import { Server } from '@hocuspocus/server'
import { SQLite } from '@hocuspocus/extension-sqlite'

const server = Server.configure({
  port: 80,

  async onConnect() {
    console.log('🔮')
  },

  extensions: [
    new SQLite({
      database: 'db.sqlite',
    }),
  ],
})

server.listen()

Community

For help, discussion about best practices, or any other conversation:

Join the Tiptap Discord Server

Sponsors 💖


überdosis

Cargo

Saga

Gamma

Outline

Ahrefs

Brickdoc

Sana

… and hundreds of awesome inviduals.

Using Hocuspocus in production? Invest in the future of Hocuspocus and become a sponsor!

Contributing

Please see CONTRIBUTING for details.

Contributors

kris (who wrote the initial version), Tom Moor and many more.

License

The MIT License (MIT). Please see License File for more information.