Description
There's interest in adding presence to json0, and I thought I'd make an issue to summarize the need and link to related material.
My desire is to add presence features (cursors, selections) to an app that is using text0 within json0. Others are interested in using the already defined presence implementation of ot-rich-text.
The goal is to define presence in such a way that any json0 leaf node, of any OT type, can have presence, if its OT type implements presence.
Related:
- Presence issue in ottypes/json0
- Presence issue in ottypes/json1
- Presence issue in ottypes/rich-text
- Add presence-related properties in ottypes/docs (pending PR)
- presence implementation in ShareDB (pending PR) by @gkusiba
- ot-rich-text (implements presence)
- Operation.js implements the presence functions
- Interesting Cursor Transform Work by Robert Lord
- https://github.com/SyncOT/SyncOT - implements presence differently than ShareDB, but will leverage the
ottypes
family.
My question to you @josephg is, would a PR that implements presence for json0 we welcome here, or would we be better off maintaining a fork for presence? I understand that merging such a PR into json0 may be risky, as mainline ShareDB does not implement the presence spec, which itself is not really "official" quite yet.
Activity