This monorepo contains the official Portable Text editor and related packages for building rich text editing experiences.
For documentation and guides, visit portabletext.org.
Or try the editor in the Portable Text Playground.
| Package | Description |
|---|---|
@portabletext/editor |
The official editor for editing Portable Text |
@portabletext/schema |
Define and compile Portable Text schemas with full type safety |
@portabletext/toolbar |
React hooks for building toolbars and related UI components |
| Package | Description |
|---|---|
@portabletext/plugin-character-pair-decorator |
Automatically match a pair of characters and decorate the text in between |
@portabletext/plugin-emoji-picker |
Easily configure an Emoji Picker for the Portable Text Editor |
@portabletext/plugin-input-rule |
Easily configure Input Rules in the Portable Text Editor |
@portabletext/plugin-markdown-shortcuts |
Adds helpful Markdown shortcuts to the editor |
@portabletext/plugin-one-line |
Restricts the Portable Text Editor to a single line |
@portabletext/plugin-paste-link |
Allows pasting links in the Portable Text Editor |
@portabletext/plugin-typeahead-picker |
Generic typeahead picker infrastructure (emoji, mentions, slash commands) |
@portabletext/plugin-sdk-value |
Connects a Portable Text Editor with a Sanity document using the SDK |
@portabletext/plugin-typography |
Automatically transform text to typographic variants |
| Package | Description |
|---|---|
@portabletext/block-tools |
Various tools for processing Portable Text |
@portabletext/markdown |
Convert Portable Text to Markdown and back again |
@portabletext/keyboard-shortcuts |
Platform-aware keyboard shortcuts |
@portabletext/sanity-bridge |
Convert between Sanity schemas and Portable Text schemas |
@portabletext/patches |
Apply Sanity patches to a value |
@portabletext/test |
Testing utilities for the Portable Text Editor |
@portabletext/racejar |
A testing framework agnostic Gherkin driver |