Skip to content
QuireKit
Core docs
Alpha · evolving API
Getting startedView Markdown ↗

The ProseMirror relationship

Documents, transactions and plugins share one runtime identity.

Core builds on ProseMirror documents, State, Transaction, Step, Plugin and history semantics. Extensions compose schemas, commands and plugins into one editor, without a second document authority.

Import map

Original packageQuireKit package
prosemirror-model@quirekit/pm-model
prosemirror-state@quirekit/pm-state
prosemirror-transform@quirekit/pm-transform
prosemirror-history@quirekit/pm-history
prosemirror-view@quirekit/pm-view (native DOM)

Common DOM-free interfaces are also exported by @quirekit/pm. Native DOM View remains separate; Canvas/SVG do not consume DOM layout results.

When to use PM directly

Use public PM types for complex commands, step mapping and state plugins. Expose user-facing operations through editor.commands, chain() and can() so controls and plugins use the same mutation path.

Do not mix two PM runtimes in one editor. Node, Selection and Plugin identities can differ across copies; review transitive dependencies when migrating extensions.

QuireKitQuireKit · Core, plugins and Classic docs