brainstate

ProseMirror/prosemirror · source

Snapshot 0 · 2026-11-04T12:47:23Z · JavaScript · MIT

Content fingerprintb50ffc4a7be150c5f24bc7bddfbebea9f5c73d15f4581e5cd7d434b0c82a4cab

GitHub description at capture

The ProseMirror WYSIWYM editor

README at capture

**This repository has moved to https://code.haverbeke.berlin/prosemirror/prosemirror**

# prosemirror

[ [**WEBSITE**](https://prosemirror.net) | [**ISSUES**](https://code.haverbeke.berlin/prosemirror/prosemirror/issues) | [**FORUM**](https://discuss.prosemirror.net) ]

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](https://code.haverbeke.berlin/prosemirror/). 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](https://prosemirror.net) has more information, a
number of [examples](https://prosemirror.net/examples/) and the
[documentation](https://prosemirror.net/docs/).

This code is released under an
[MIT license](https://code.haverbeke.berlin/prosemirror/prosemirror/src/branch/main/LICENSE).
There's a [forum](http://discuss.prosemirror.net) for general
discussion and support requests, and the
[bug tracker](https://code.haverbeke.berlin/prosemirror/prosemirror/issues)
is the place to report issues.

**STOP READING HERE IF YOU'RE SIMPLY _USING_ PROSEMIRROR. YOU CAN
INSTALL THE SEPARATE [NPM
MODULES](https://www.npmjs.com/search?q=prosemirror-) FOR THAT. THE
INSTRUCTIONS BELOW ONLY APPLY WHEN _DEVELOPING_ PROSEMIRROR!**

## Setting up a dev environment

Clone this repository, and make sure you have
[node](https://nodejs.org/en/) 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](https://code.haverbeke.berlin/prosemirror/) organization
on code.haverbeke.berlin. Bugs for core packages are tracked in the [bug
tracker](https://code.haverbeke.berlin/prosemirror/prosemirror/issues) for the
meta repository.

We aim to be an inclusive, welcoming community. To make that explicit,
we have a [code of
conduct](http://contributor-covenant.org/version/1/1/0/) that applies
to communication around the project.