Skip to main content

Setup

Step 1: Add Comment components

  • Add the Velt Comments component to the root of your app.
  • This component is required to render comments in your app.
  • Set the text mode prop to false to hide the default text comment tool.

Step 2: Install the Velt Quill extension

Step 3: Configure the Quill editor with the Velt Comments module

Step 4: Add a comment button to your Quill editor

Add a button that users can click to add comments after selecting text.
When clicking a button, the browser moves focus to the button which clears the editor selection. You must save the selection on mousedown (before focus changes) and restore it before adding the comment.
Unlike Tiptap, Quill does not have a built-in bubble menu. You will need to create your own comment button or toolbar item.

Step 5: Call addComment to add a comment

  • Call this method to add a comment to selected text in the Quill editor. You can use this when the user clicks on the comment button or presses a keyboard shortcut.
  • Params: AddCommentRequest. It has the following properties:
    • editor: Instance of the Quill editor.
    • editorId: Id of the Quill editor. Use this if you have multiple Quill editors on the same page. (optional)
    • context: Add any custom metadata to the Comment Annotation. Learn more. (optional)

Step 6: Render comments in Quill editor

  • Get the comment data from Velt SDK and render it in the Quill editor.
  • Params: RenderCommentsRequest. It has the following properties:
    • editor: Instance of the Quill editor.
    • editorId: Id of the Quill editor. Use this if you have multiple Quill editors on the same page. (optional)
    • commentAnnotations: Array of Comment Annotation objects.

Step 7: Persist Velt Comment Marks (optional)

  • By default, Velt comment marks (<velt-comment-text>) are persisted by the Velt SDK. When the editor loads and the Velt SDK initializes, the marks will be automatically added to the editor.
  • If you plan to store the contents of the Quill editor on your end with the comment marks already included, you can disable this feature.
  • Default: true

Step 8: Style the commented text

  • You can style the commented text by adding CSS for the velt-comment-text element.

APIs

QuillVeltComments

The Velt Comments module for Quill. Register it with Quill before creating the editor.
  • Params: options?: QuillVeltCommentsConfig
    • editorId?: string - Unique identifier for this editor instance (for multi-editor scenarios)
    • persistVeltMarks?: boolean - Whether to persist Velt marks. Default: true
  • Returns: Quill Module

addComment()

Creates a comment annotation for the currently selected text in the editor.
  • Params:
  • Returns: Promise<void>

renderComments()

Renders and highlights comment annotations in the editor.