This library aims to be a powerful and flexible editor within the Vue ecosystem, combining Tiptap with ShadCN for a seamless experience. β¨
π Demo: https://tiptap-shadcn-vue.pages.dev
π While itβs not my main priority, I will provide active support.
π₯ If youβd like to contribute, I can invite you to the project.
π‘ Have an idea? Open an issue, and letβs discuss!
Letβs build an amazing editor for Vue together! π¨π₯
This package includes the following components:
Make sure to install the required dependencies:
npx shadcn-vue@latest add "https://tiptap-shadcn-vue.pages.dev/r/tiptap.json"
<script setup lang="ts">
import StarterKit from '@tiptap/starter-kit'
import { useEditor } from '@tiptap/vue-3'
const editor = useEditor({
content: '<p>Hello World!</p>',
extensions: [
StarterKit,
// Add other extensions as needed
],
})
</script>
<template>
<TiptapProvider :editor="editor">
<TiptapToolbar />
<TiptapContent />
<TiptapStatusBar show-word-count />
</TiptapProvider>
</template>
This library uses the following shadcn-ui components:
Make sure these components are available in your project.
This library is designed to be highly customizable. You can modify or extend any component to fit your specific needs:
Components are located in the components/tiptap directory. Each component follows a consistent structure:
components/tiptap/
βββ TiptapEditor.vue
βββ TiptapContent.vue
βββ TiptapToolbar.vue
βββ ...
Components communicate through the editor instance provided by the TiptapProvider. When making changes:
After modifying components, test your changes thoroughly across different content types and editor states to ensure compatibility and stability.
MIT
We use cookies
We use cookies to analyze traffic and improve your experience. You can accept or reject analytics cookies.