[ WEBSITE | ISSUES | FORUM | GITTER ]
ProseMirror is a well-behaved rich semantic content editor based on contentEditable, with support for collaborative editing and custom document schemas.
The library consists of a number of 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 demos and the documentation.
NOTE: This project is in BETA stage. It isn't thoroughly tested,
and the API might still change across 0.x
releases. You are welcome
to use it, but don't expect it to be very stable yet.
This code is released under an MIT license. There's a forum for general discussion and support requests, and the Github bug tracker is the place to report issues.
If you clone this repository and npm install
it, the installation
script will create subdirectories for all the core prosemirror modules
(as well as some not-really-core modules needed to run demos), such as
model
, view
, state
, etc, symlink the internal dependencies
between those, and then npm install
their remaining dependencies.
The bin/pm
script in this repository provides functionality for
working with the repositories:
-
bin/pm status
prints the git status of all submodules -
bin/pm commit <args>
runsgit 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
runsgit push
in all modules. -
bin/pm grep <pattern>
greps through the source code for the modules for the given pattern
(Functionality for managing releases will be added in the future.)
To run the demo in demo/
, do npm run demo
, and go to
localhost:8080. This loads the individual
JavaScript files from the distribution's dist
directories, and will
only need a refresh when those are changed. To directly test the
actual code, in a browser that understands ES6, you can create a
symlink from dist
to src
in each of the modules (npm run link-src
).