ProseKit
Build rich text editors with ease
A headless, extensible framework designed for creating powerful text editing experiences for the web.
The editor that thinks like you
Every keystroke flows naturally. Every feature appears exactly when you need it. This is writing without barriers.
Text that shines.
Make your words bold, italic, underlined, or crossed out. Add inline code that stands out. Create links that connect.
Select any text to format it. Type @ to mention @someone or # for #topics. Press / and discover what's possible.
Lists that organize.
Bullet points that guide thoughts
Nested lists for complex ideas
Sub-points flow naturally
Code that inspires.
// Code that reads like poetry
const magic = createEditor()
magic.transform(thoughts)
Images that captivate.
Drag the handle in the bottom right corner to resize.
Tables that structure.
Feature
How to use
Result
Format text
Select and choose
Perfect styling
Add mentions
Type @ and name
Connected ideas
Insert anything
Press / for menu
Endless possibilities
Math that renders.
Inline math like e^{i\pi} + 1 = 0 appears within text. Type $...$ to insert an inline equation.
\int_{-\infty}^{\infty} e^{-x^2} \, dx = \sqrt{\pi}Type $$ in a new line and press Enter to create a block equation.
Quotes that inspire.
"This is not just an editor. This is how writing should feel."
Start typing. Everything else just flows.
Headless by Design
Giving you complete control over styling and appearance, with zero assumptions about your design choices.
Copy-Paste Components
TailwindCSS-powered components you can copy directly into your project and customize freely.
Framework Flexibility
The same core with specialized adapters for React, Vue, Preact, Svelte, and Solid.
Flexible API Design
Carefully crafted API that makes extending and customizing your editor intuitive and powerful.
Built on ProseMirror
Leverages the battle-tested ProseMirror foundation used by The New York Times and Atlassian.