Vue Quilly

1.1.6 · active · verified Sun Apr 19

Vue Quilly is a lightweight Vue 3 component designed to integrate Quill v2, a powerful WYSIWYG rich text editor, into Vue-powered applications. Currently at version 1.1.6, the library sees frequent minor updates, primarily focused on dependency maintenance and minor fixes. Its key differentiators include leveraging `quill/core` to minimize bundle size by avoiding the import of all Quill modules, offering robust TypeScript support, and seamless integration with both Vue 3 and Nuxt 4 projects. It handles content in both HTML and Quill Delta formats, providing a highly customizable base for building bespoke rich text editing experiences while maintaining a small footprint. This component aims to simplify the creation of advanced text editors by abstracting the direct Quill API, allowing developers to focus on application logic while still retaining fine-grained control over the editor's features and appearance.

Common errors

Warnings

Install

Imports

Quickstart

Demonstrates basic setup of QuillyEditor with Quill v2, including component import, content binding, toolbar configuration, and manual initialization.

<script setup lang="ts">
import { ref, onMounted } from 'vue'
import { QuillyEditor } from 'vue-quilly'
import Quill from 'quill'
import 'quill/dist/quill.snow.css'

const editor = ref<InstanceType<typeof QuillyEditor>>()
const content = ref('<p>Hello Quilly!</p>')
let quill: Quill | undefined

const options = {
  theme: 'snow',
  modules: {
    toolbar: [
      ['bold', 'italic', 'underline'],
      [{ list: 'ordered' }, { list: 'bullet' }],
      ['link', 'image']
    ]
  }
}

onMounted(() => {
  quill = editor.value?.initialize(Quill)
})
</script>

<template>
  <QuillyEditor ref="editor" v-model="content" :options="options" />
</template>

view raw JSON →