Tiptap Core

Headless, framework-agnostic rich text editor toolkit built on ProseMirror

Library
npm
v3.31.3
38,285stars
MIT License

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum.How we score it →
91/100Excellent
Development Activity96
Maintenance100
Community68
Maturity60
Momentum40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation.How we score it →
85/100Excellent
Architecture88
Code Quality78
Innovation91
Learning Curve82

Tiptap Core is the foundational package of the Tiptap editor suite, a headless rich text editor framework with no bundled UI, giving developers full control over markup and styling. Built on top of ProseMirror, it provides the Editor class, extension system, and command framework that every Tiptap extension (bold, tables, collaboration, mentions, and 100+ others) plugs into, and ships bindings for React, Vue, and vanilla JavaScript.

What You Get

  • The Editor class: a ProseMirror-backed editor instance with lifecycle events (create, update, selectionUpdate, focus, blur, destroy)
  • Node, Mark, and Extension base classes for defining custom schema elements and behavior
  • A chainable, composable command API (editor.chain().focus().toggleBold().run())
  • An ExtensionManager and CommandManager that resolve extension configs, schemas, and commands at editor init time
  • Built-in core extensions for clipboard handling, keymaps, drop/paste events, tabindex, and text direction
  • Framework-agnostic JSX runtime helpers used by the React and Vue bindings

Common Use Cases

  • Building a custom WYSIWYG or Markdown-style editor UI from scratch with full design control
  • Powering collaborative document editors (paired with Tiptap’s Yjs/Hocuspocus extensions)
  • Embedding rich text editing inside CMS admin panels, comment boxes, or notion-like block editors
  • Extending the schema with custom nodes/marks for domain-specific content (e.g. mentions, embeds, math)

Under The Hood

Architecture — The Editor class (src/Editor.ts) is the central object: it extends a typed EventEmitter, owns a ProseMirror EditorState/EditorView pair, and delegates schema/extension resolution to an ExtensionManager (src/ExtensionManager.ts) and command dispatch to a CommandManager (src/CommandManager.ts). Editor behavior is composed from Node, Mark, and Extension classes (src/Node.ts, src/Mark.ts, src/Extension.ts), all built on a shared Extendable base (src/Extendable.ts) that supports config inheritance/overrides, giving the whole ecosystem — starter-kit, extension-*, react, vue-2/3 — one consistent extension contract on top of this package. Tech Stack — Written entirely in strict-mode TypeScript (tsconfig.json sets strict: true, target: es2019), built with tsup per-package and orchestrated repo-wide with Turborepo (turbo.json) and pnpm workspaces (pnpm-workspace.yaml). The only runtime dependency is @tiptap/pm, Tiptap’s own repackaging of ProseMirror’s model/state/view modules, keeping the dependency surface deliberately thin. Code Quality — The monorepo enforces strict TypeScript, oxlint/oxfmt linting and formatting, commitlint/husky pre-commit hooks, and changesets for versioning. Core has a small but targeted Vitest unit-test suite (src/__tests__/, e.g. transformPastedHTML.test.ts, inputRuleInlineAtoms.test.ts) covering tricky parsing/paste edge cases, while broader editor-behavior coverage lives in a repo-wide Playwright end-to-end suite rather than exhaustive core unit tests — reasonable for a project whose correctness is largely delegated to ProseMirror’s own well-tested primitives. API Design — Public classes and config objects are extensively JSDoc-annotated with @default/@example tags (see NodeConfig in src/Node.ts), and the chainable editor.chain().focus().toggleBold().run() command pattern is consistent across every extension in the ecosystem, giving the API a low-boilerplate, discoverable feel once the extension/command mental model clicks.

Used by 1158 apps in this directory

TypeScript
76%
AGPL 3.0

Abby

Developer Tools · Product Management

166

Statically typed feature flags, remote config, and A/B testing with framework-native SDKs for TypeScript teams.

View details
30
Repo Health
70
Technical
63
Dependency
Built with
TypeScript76%
MDX18%
Updated 1 years ago
TypeScript
76%
AGPL 3.0

Abby

Developer Tools · Product Management

166

Statically typed feature flags, remote config, and A/B testing with framework-native SDKs for TypeScript teams.

View details
30
Repo Health
70
Technical
63
Dependency
Built with
TypeScript76%
MDX18%
Updated 1 years ago
TypeScript
76%
AGPL 3.0

Abby

Developer Tools · Product Management

166

Statically typed feature flags, remote config, and A/B testing with framework-native SDKs for TypeScript teams.

View details
30
Repo Health
70
Technical
63
Dependency
Built with
TypeScript76%
MDX18%
Updated 1 years ago
TypeScript
76%
AGPL 3.0

Abby

Developer Tools · Product Management

166

Statically typed feature flags, remote config, and A/B testing with framework-native SDKs for TypeScript teams.

View details
30
Repo Health
70
Technical
63
Dependency
Built with
TypeScript76%
MDX18%
Updated 1 years ago
TypeScript
76%
AGPL 3.0

Abby

Developer Tools · Product Management

166

Statically typed feature flags, remote config, and A/B testing with framework-native SDKs for TypeScript teams.

View details
30
Repo Health
70
Technical
63
Dependency
Built with
TypeScript76%
MDX18%
Updated 1 years ago
TypeScript
76%
AGPL 3.0

Abby

Developer Tools · Product Management

166

Statically typed feature flags, remote config, and A/B testing with framework-native SDKs for TypeScript teams.

View details
30
Repo Health
70
Technical
63
Dependency
Built with
TypeScript76%
MDX18%
Updated 1 years ago
TypeScript
99%
Other

Activepieces

Automation · AI Assistants

24,298

Open-source AI automation platform that converts 280+ workflow integrations into MCP servers for LLMs, with no-code builders and TypeScript extensibility.

View details
92
Repo Health
85
Technical
64
Dependency
Built with
TypeScript99%
Updated today
TypeScript
99%
Other

Activepieces

Automation · AI Assistants

24,298

Open-source AI automation platform that converts 280+ workflow integrations into MCP servers for LLMs, with no-code builders and TypeScript extensibility.

View details
92
Repo Health
85
Technical
64
Dependency
Built with
TypeScript99%
Updated today
TypeScript
99%
Other

Activepieces

Automation · AI Assistants

24,298

Open-source AI automation platform that converts 280+ workflow integrations into MCP servers for LLMs, with no-code builders and TypeScript extensibility.

View details
92
Repo Health
85
Technical
64
Dependency
Built with
TypeScript99%
Updated today

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search