Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ueberdosis/hocuspocus
The CRDT Yjs WebSocket backend for conflict-free real-time collaboration in your app.
https://github.com/ueberdosis/hocuspocus
collaborative-editing crdt prosemirror real-time self-hosted slatejs tiptap yjs
Last synced: 2 days ago
JSON representation
The CRDT Yjs WebSocket backend for conflict-free real-time collaboration in your app.
- Host: GitHub
- URL: https://github.com/ueberdosis/hocuspocus
- Owner: ueberdosis
- License: mit
- Created: 2020-11-13T14:50:08.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2024-11-22T12:46:18.000Z (22 days ago)
- Last Synced: 2024-12-09T00:05:34.021Z (5 days ago)
- Topics: collaborative-editing, crdt, prosemirror, real-time, self-hosted, slatejs, tiptap, yjs
- Language: TypeScript
- Homepage: https://tiptap.dev/docs/hocuspocus/introduction
- Size: 19 MB
- Stars: 1,357
- Watchers: 116
- Forks: 128
- Open Issues: 53
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: docs/contributing.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Hocuspocus
A plug & play collaboration backend based on [Y.js](https://github.com/yjs/yjs).[![Build Status](https://github.com/ueberdosis/hocuspocus/workflows/build/badge.svg)](https://github.com/ueberdosis/hocuspocus/actions)
[![Version](https://img.shields.io/npm/v/@hocuspocus/server.svg?label=version)](https://www.npmjs.com/package/@hocuspocus/server)
[![Downloads](https://img.shields.io/npm/dm/@hocuspocus/server.svg)](https://npmcharts.com/compare/@hocuspocus/server?minimal=true)
[![License](https://img.shields.io/npm/l/@hocuspocus/server.svg)](https://www.npmjs.com/package/@hocuspocus/server)
[![Chat](https://img.shields.io/badge/chat-on%20discord-7289da.svg?sanitize=true)](https://discord.gg/WtJ49jGshW)
[![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub)](https://github.com/sponsors/ueberdosis)## Documentation
The full documentation is a available on [hocuspocus.dev/introduction](https://tiptap.dev/docs/hocuspocus/introduction).## Cloud Hosting
You want to use Hocuspocus, but don't want to care about hosting? Check our [Cloud Offering: Tiptap Collab](https://tiptap.dev/collab)
## Feedback
Send all your questions, feedback and bug reports to [[email protected]](mailto:[email protected]) or [create an issue](https://github.com/ueberdosis/hocuspocus/issues/new/choose) 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](http://127.0.0.1) (or prefixed with the WebSocket protocol on ws://127.0.0.1):```js
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](https://discord.gg/WtJ49jGshW)
## Sponsors 💖
überdosis
Cargo
Saga
Gamma
Outline
Ahrefs
Brickdoc
Sana
Poggio
… and hundreds of awesome inviduals.
Using Hocuspocus in production? Invest in the future of Hocuspocus and [become a sponsor!](https://github.com/sponsors/ueberdosis)
## Contributing
Please see [CONTRIBUTING](docs/contributing.md) for details.## Contributors
[kris](https://github.com/kriskbx) (who wrote the initial version), [Tom Moor](https://github.com/tommoor), [YousefED (@TypeCellOS)](https://github.com/YousefED) and [many more](../../contributors).## License
The MIT License (MIT). Please see [License File](LICENSE.md) for more information.