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

The Tiptap relationship

Familiar Core APIs with explicit package identity and view boundaries.

QuireKit extends Tiptap Core code and its extension model, retaining the relevant license notices. It is more than a runtime wrapper around an installed @tiptap/core: Core and ProseMirror packages are maintained under @quirekit, with explicit view integration.

Familiar concepts

new Editor(), Extension.create(), Node.create(), Mark.create(), .configure(), .extend(), editor.commands, editor.chain(), editor.can(), input rules, keyboard shortcuts, storage and lifecycle hooks retain familiar authoring patterns.

Common matching commands

TaskEntry pointsRequirement
Read and write contentgetJSON(), getHTML(), commands.setContent(), insertContent(), clearContent()Content matching the active schema
Selection and focusfocus(), blur(), setTextSelection(), setNodeSelection(), selectAll()Mounted view and valid document positions
Marks and attributessetMark(), toggleMark(), unsetMark(), updateAttributes()Registered target Node / Mark
Common formattingtoggleBold(), toggleItalic(), toggleHeading(), toggleBulletList()Matching extensions or StarterKit
Historyundo(), redo()Registered history extension

Except for getJSON() / getHTML(), access these commands through editor.commands or editor.chain(). This is a practical migration list, not a compatibility claim for every ecosystem package. Current public types own the parameters and return values.

Migration map

Tiptap projectQuireKit projectCheck
@tiptap/core@quirekit/coreType-check against current public exports
@tiptap/starter-kit@quirekit/starter-kitReview options and installed extensions
@tiptap/pm/* / prosemirror-*Matching @quirekit/pm-* or @quirekit/pmKeep a single PM identity per instance
Default DOM mountExplicit DomViewExtension, mode: 'dom'Other backends need their own presentation support
Tiptap Vue / React wrappersHost-owned Core creation and disposalDo not assume unchanged wrapper compatibility

Highly aligned APIs do not guarantee that every ecosystem plugin runs unchanged. Plugins relying on DOM NodeViews, browser geometry, private fields or native DOM selection need corresponding view support for Canvas/SVG. Review third-party licensing and package identity too.

A migrated extension

This site-authored shortcut extension uses the same command registry and history. It is an example, not a built-in plugin.

core/shortcuts.tsts

Quick start runs it. Continue with the extension model.

State and replacement differences in products

Read external native PM state through editor.state.pm; contextual raw-command state remains the PM facade. Use QuireKit replaceDocument() for complete file restoration including root attributes; setContent() retains ordinary content-replacement semantics. See Editor API for inputs, results and lifetime.

QuireKitQuireKit · Core, plugins and Classic docs