THIS IS A WORK-IN-PROGRESS: I'm currently exploring the idea; below is the vision, time will tell 😉 - Matt
- Working binding
- Add tooling (prettier and more)
- Tested binding
- Add tooling (suitable NPM package generation)
- Deem a stable(ish) beta release (+ version bump)
- Create first beta release on NPM
- Open up to public for community testing and feedback
- More testing/amends once initial bugs uncovered
- Use in a private product / gather community issues and update beta release
- Push stable release on NPM
There are no timelines for the moment, although I'm keen to quite quickly get this sorted over a period of weeks.
Looking to utilise collaboration in a product that uses Editor JS. hughfenghen/y-editorjs is a fantastic starting point but needs a little more love that includes breaking changes. Mad credit to hughfenghen for getting this on the road.
Decided not to create a pull request as we're in need of active development on this. Open to potentially merging in the future.
BETA - This is still under active development
- Import
yjs-editorjs-binding
package
Package Manager | Command |
---|---|
NPM | npm i yjs-editorjs-binding |
Yarn | yarn add yjs-editorjs-binding |
PNPM | pnpm i yjs-editorjs-binding |
- Use in your code, like the example below:
import { Doc as YDoc } from "yjs"
import EditorJS from "@editorjs/editorjs"
import { YJSEditorJSBinding } from "yjs-editorjs-binding"
const yDoc = new YDoc()
const yArray = yDoc.getArray("docId")
const binding = new YJSEditorJSBinding(yArray)
const editor = new EditorJS({
holder: document.querySelector<HTMLElement>("#editor-js"),
// Hook in our binding listener into Editor JS
onChange: (api, event: CustomEvent) => {
binding.onBlockEventEditorJS(api, event)
},
})
binding.bindEditor(editor)
- Clone this repo
pnpm i
pnpm run dev
andpnpm run ws
(runs client and WS server)- Open http://localhost:8080 in two browser tabs and play
- Release a stable solution for Editor JS binding.
- Encourage pull requests to continue the development of this yJS Editor JS Binding.
Pull requests and issues are highly encouraged and will be responded to rather quickly.
Like any Open Source project; this doesn't pay the bills! Consideration of that is expected in all community comms. We're in this together. 🔥
It's coming! With PNPM becoming a first-class recommendation in many ecosystems, the Dependabot team are looking to release a solution soon - dependabot/dependabot-core#1736 (comment)