Block-based Editing
Block-based editing with slash commands, drag-and-drop reordering, and a bubble menu for inline formatting.
Features
A Markdown editor built with Tiptap for React 19, Vue 3, and Svelte 5
Install Vizel for your framework:
npm install @vizel/reactnpm install @vizel/vuenpm install @vizel/svelteimport { Vizel } from '@vizel/react';
import '@vizel/core/styles.css';
function App() {
return (
<Vizel
placeholder="Type '/' for commands..."
onUpdate={({ editor }) => console.log(editor.getJSON())}
/>
);
}<script setup lang="ts">
import { Vizel } from '@vizel/vue';
import '@vizel/core/styles.css';
</script>
<template>
<Vizel
placeholder="Type '/' for commands..."
@update="({ editor }) => console.log(editor.getJSON())"
/>
</template><script lang="ts">
import { Vizel } from '@vizel/svelte';
import '@vizel/core/styles.css';
</script>
<Vizel
placeholder="Type '/' for commands..."
onUpdate={({ editor }) => console.log(editor.getJSON())}
/>Type / to open the command menu:
Select text to display the bubble menu:
Drag blocks by their handle to reorder content.
| Feature | Description |
|---|---|
| Multi-framework | React 19, Vue 3, Svelte 5 |
| TypeScript | Type definitions included |
| Markdown | Import and export |
| Theming | CSS variables |
| Bundle size | Tree-shakeable |
| Extensions | Modular architecture |