A webxdc app using yjs to enable collaborative editing in a WYSIWYG manner
  • JavaScript 51.6%
  • CSS 44%
  • HTML 4.4%
hpk 44514bec98 Update README.md
add "this repo is in maintenance" mode note.
2025-05-19 11:20:29 +02:00
.forgejo/workflows remove comment 2023-09-04 19:06:43 +02:00
assets update screenshot 2023-09-15 18:10:52 +02:00
css move sync-indicator setup to prosemirror-setup.mjs, cleaning up main. 2023-09-27 17:15:23 +02:00
public docs: manifest.toml: source_code_url GitHub -> Codeberg 2023-07-11 12:39:28 +04:00
src add support for webxdc.ssendUpdateInterval 2024-12-11 13:59:46 +01:00
.eslintignore Add eslint as linter 2023-09-21 22:47:51 +02:00
.eslintrc.js also integrate prefer-const, closes #69 2023-09-26 12:52:00 +02:00
.gitignore use icon & move stuff to correct place 2022-05-12 16:51:19 +02:00
CHANGELOG.md add support for webxdc.ssendUpdateInterval 2024-12-11 13:59:46 +01:00
index.html streamline index.html and import css there instead of in code 2023-09-27 15:21:19 +02:00
LICENSE Initial commit 2022-05-05 14:42:26 +02:00
package-lock.json fixed a build issue 2024-05-11 23:21:15 +02:00
package.json use latest y-webxdc 2024-05-11 23:10:59 +02:00
README.md Update README.md 2025-05-19 11:20:29 +02:00
vite.config.js refactor: build: simplify Eruda inclusion logic 2023-09-19 19:30:29 +04:00

Editor

Small editor webxdc application with export-markdown support.

This app uses yjs and prosemirror, along with the y-webxdc provider to offer collaborative editing for webxdc-supporting messengers. While this editor app can be productively used, it focuses on small code size and complexity, and does not aim to become a full-fledged editor. Little improvement PRs are welcome!

NOTE: this repository is in maintenance mode. New features can typically only arrive if a merge/pull request is done. Bugs may be reported.

Trying the latest release

  1. Download the latest editor.xdc from release assets.

  2. Send a message into a group chat and attach the downloaded editor.xdc release file.

  3. Anyone in the chat can now hit the "start" button and edit the chat-shared document.

Editor Screenshot

Development

Install

npm install

Run

Run the app in the webxdc-dev tool:

npm start

Test

Run code-style checks with the following command (basically same as npm run check):

npm test

Build

To create a .xdc file that can be send to a chat in any Webxdc-capable app, execute:

npm run build

The resulting .xdc file is saved in the dist-release/ folder. Then just send the file with a message to a chat and you are ready to go!

To build with Eruda debugger, run ERUDA=1 npm run build.

Code Style

Code style is checked and fixed by eslint, run:

npm run check
npm run fix

to perform checks or apply suggested fixes. Note that npm test will automatically check code style.

Release

With Forgejo Actions

  1. Simply push a tag.

Given that the Actions are properly set up, the workflow will run and publish a release. You can later edit the release.

Manually

  1. Follow Building

  2. Go to https://codeberg.org/webxdc/editor/releases/new

  3. Upload the .xdc file from dist-release/. Make sure that the name of the file is the same as in the previous releases.

  4. Fill and submit the form.