What is @tiptap/extension-link?
@tiptap/extension-link is an extension for the Tiptap rich-text editor that allows users to add, edit, and manage hyperlinks within their content. It provides a set of tools and configurations to handle links effectively, making it easier to integrate link functionalities into your Tiptap editor setup.
What are @tiptap/extension-link's main functionalities?
Add a Link
This feature allows you to add a link to your content. The code sample demonstrates how to configure the Link extension and initialize the editor with a link in the content.
import { Link } from '@tiptap/extension-link';
import { Editor } from '@tiptap/core';
const editor = new Editor({
extensions: [
Link.configure({
openOnClick: false,
}),
],
content: '<p>Click <a href="https://example.com">here</a> to visit example.com</p>',
});
Edit a Link
This feature allows you to edit an existing link. The code sample shows how to change the href attribute of a link using Tiptap's chainable commands.
editor.chain().focus().extendMarkRange('link').setLink({ href: 'https://new-url.com' }).run();
Remove a Link
This feature allows you to remove a link from the content. The code sample demonstrates how to use the unsetLink command to remove a link.
editor.chain().focus().unsetLink().run();
Open Link on Click
This feature allows links to be opened when clicked. The code sample shows how to configure the Link extension to open links on click.
import { Link } from '@tiptap/extension-link';
import { Editor } from '@tiptap/core';
const editor = new Editor({
extensions: [
Link.configure({
openOnClick: true,
}),
],
content: '<p>Click <a href="https://example.com">here</a> to visit example.com</p>',
});
Other packages similar to @tiptap/extension-link
prosemirror-schema-basic
prosemirror-schema-basic provides a basic schema for ProseMirror, including support for links. It is more low-level compared to @tiptap/extension-link and requires more manual setup and configuration.
slate
Slate is a completely customizable framework for building rich text editors. It includes support for links, but requires more configuration and setup compared to @tiptap/extension-link.
draft-js
Draft.js is a framework for building rich text editors in React. It includes support for links, but the API and configuration are different from Tiptap, offering a different set of features and flexibility.
@tiptap/extension-link
Introduction
Tiptap is a headless wrapper around ProseMirror – a toolkit for building rich text WYSIWYG editors, which is already in use at many well-known companies such as New York Times, The Guardian or Atlassian.
Official Documentation
Documentation can be found on the Tiptap website.
License
Tiptap is open sourced software licensed under the MIT license.