This repository has been migrated to a new organization (Read more: https://github.com/ueberdosis/tiptap/issues/759)

Introduction

tiptap is a renderless and extendable rich-text editor for Vue.js (opens new window)

Why tiptap was built

The guys behind überdosis (opens new window) were looking for a text editor for Vue.js (opens new window) and found some solutions that didn't really satisfy their needs. The editor should be easy to extend and not based on old dependencies such as jQuery. For React there is already a great editor called Slate.js (opens new window), which impresses with its modularity. They came across ProseMirror (opens new window) and decided to build on top of it. ProseMirror (opens new window) is a toolkit for building rich-text editors that are already in use at many well-known companies such as Atlassian or New York Times.

What does renderless mean?

With renderless components you'll have full control over markup and styling. tiptap doesn't tell you what a menu should look like or where it should be rendered in the DOM. That's all up to you. There is also a good article (opens new window) about renderless components by Adam Wathan.

No styling by default

tiptap comes without any CSS. It's a feature – not a bug.

How is the data stored under the hood?

You can save your data as a raw HTML string or can get a JSON-serializable representation of your document. And of course, you can pass these two types back to the editor.

Examples

To check out some live examples, visit tiptap.dev (opens new window).

Who is using tiptap?

  • Scrumpy
  • GitLab
  • Statamic
  • Craft CMS
  • ApostropheCMS
  • Directus
  • Nextcloud

Contributing

Please see the CONTRIBUTING (opens new window) file for details. If you want to contribute with the documentation (opens new window), install its dependencies and run Vuepress (opens new window)

yarn install
yarn start

Credits

License

The MIT License (MIT). Please see the License File (opens new window) for more information.