The ProseMirror WYSIWYM editor http://prosemirror.net/
  • JavaScript 100%
Find a file
2026-04-01 22:19:01 +02:00
.github Remove glitch link from issue template 2023-06-08 17:54:52 +02:00
assets Add logo svg files 2020-12-03 19:26:31 +01:00
bin Update links to github 2026-04-01 19:09:42 +02:00
demo Restore accidentally commited demo code 2022-12-09 11:05:27 +01:00
.gitignore Add search module 2024-05-25 14:17:23 +02:00
CONTRIBUTING.md Update links to github 2026-04-01 19:09:42 +02:00
LICENSE Update maintainer email 2023-01-24 08:23:54 +01:00
package.json Update links to github 2026-04-01 19:09:42 +02:00
README.md Test commit for webhook 2026-04-01 22:19:01 +02:00
tsconfig.json Add search module 2024-05-25 14:17:23 +02:00

prosemirror

[ WEBSITE | ISSUES | FORUM ]

ProseMirror is a well-behaved rich semantic content editor based on contentEditable, with support for collaborative editing and custom document schemas.

The ProseMirror library consists of a number of separate modules. This repository just serves as a central issue tracker, and holds a script to help easily check out all the core modules for development.

The project page has more information, a number of examples and the documentation.

This code is released under an MIT license. There's a forum for general discussion and support requests, and the bug tracker is the place to report issues.

STOP READING HERE IF YOU'RE SIMPLY USING PROSEMIRROR. YOU CAN INSTALL THE SEPARATE NPM MODULES FOR THAT. THE INSTRUCTIONS BELOW ONLY APPLY WHEN DEVELOPING PROSEMIRROR!

Setting up a dev environment

Clone this repository, and make sure you have node installed. Next, from the cloned directory run:

bin/pm install

This will fetch the submodules, install their dependencies, and build them.

The bin/pm script in this repository provides functionality for working with the repositories:

  • bin/pm build rebuilds all the modules

  • bin/pm watch sets up a process that automatically rebuilds the modules when they change

  • bin/pm status prints the git status of all submodules

  • bin/pm commit <args> runs git commit with the given arguments in all submodules that have pending changes

  • bin/pm test runs the (non-browser) tests in all modules

  • bin/pm push runs git push in all modules

  • bin/pm grep <pattern> greps through the source code for the modules for the given pattern

  • bin/pm dev-start starts a server that rebuilds the packages whenever their sources change, and exposes the demo (demo/*) under a webserver on port 8080

(Functionality for managing releases will be added in the future.)

Community

Development of ProseMirror happens in the various repositories exposed under the ProseMirror organization on code.haverbeke.berlin. Bugs for core packages are tracked in the bug tracker for the meta repository.

We aim to be an inclusive, welcoming community. To make that explicit, we have a code of conduct that applies to communication around the project.