Skip to content

React components & templates for building rich text editor UIs with Tiptap.

License

Notifications You must be signed in to change notification settings

ueberdosis/tiptap-ui-components

Repository files navigation

Tiptap UI Components

Tiptap UI Components is a library of modular, MIT-licensed React components, templates, and primitives that help you build rich text editor UIs faster, on top of the headless Tiptap framework.

This repo also includes a CLI tool to scaffold your editor setup or install individual components with zero config.

Use the components as-is, customize them to match your design system, or drop them into an existing Tiptap setup. They're optional, composable, and built for dev speed.

Getting Started

Start with the UI Components docs to browse demos, setup guides, and usage patterns.

Installation

Install with the Tiptap CLI to scaffold your setup:

npx @tiptap/cli init

Or install a single component:

npx @tiptap/cli add [component-name]

Available Components

Templates

Fully working editor setups, ready to clone and customize:

Simple Editor (MIT Licensed):

  • Responsive layout
  • Light/Dark mode support
  • Rich text formatting, image upload, link editing
  • Fully customizable

Components

The components available in this public repository are MIT licensed and freely available:

UI Components

  • Heading button / dropdown
  • Highlight popover
  • Image upload button
  • Link popover
  • List button / dropdown
  • Mark button
  • Node button
  • Text align button
  • Undo redo button

Node Components

  • Code block
  • Image
  • Image upload
  • List
  • Paragraph

Primitives

  • Avatar, Badge, Button
  • Dropdown menu, Popover, Separator
  • Spacer, Toolbar, Tooltip

Customization

All components are designed with minimal, neutral styling to blend into your existing design system.

No themes or complex overrides required. Edit the source directly to match your brand or component system.


Want to contribute, suggest a component, or report a bug? Open an issue or join the discussion in Discord.