What is Vizel?
Vizel is a block-based visual editor for Markdown built with Tiptap, supporting React, Vue, and Svelte frameworks.
Overview
Features
Text Editing
- Text Formatting - Bold, italic, underline, strikethrough, text color, highlight
- Block Elements - Headings (H1-H6), lists (bullet, numbered, task), blockquotes
- Code Blocks - Syntax highlighting via lowlight
Block-Based Editing
- Slash Commands - Type
/to insert blocks - Bubble Menu - Formatting menu on text selection
- Drag Handle - Reorder blocks with drag and drop
Media
- Images - Drag and drop, paste from clipboard, resize with handles
- Tables - Table editing with row and column controls
- Embeds - YouTube, Vimeo, Twitter via oEmbed
- Mathematics - LaTeX equations rendered with KaTeX
- Diagrams - Mermaid and GraphViz diagrams
Development
- TypeScript - Written in TypeScript with exported type definitions
- Multi-Framework - Consistent APIs across React, Vue, and Svelte
- Extensible - Built on Tiptap's extension architecture
- Tree-shakeable - Packages support tree-shaking
Package Architecture
| Package | Description |
|---|---|
@vizel/core | Framework-agnostic core with Tiptap extensions, types, utilities, and styles |
@vizel/react | React 19 components and hooks |
@vizel/vue | Vue 3 components and composables |
@vizel/svelte | Svelte 5 components and runes |
Feature Comparison
| Feature | Default | Optional |
|---|---|---|
| Text Formatting | ✅ | - |
| Headings | ✅ | - |
| Lists (Bullet, Numbered) | ✅ | - |
| Task Lists | ✅ | - |
| Blockquotes | ✅ | - |
| Code Blocks | ✅ | - |
| Tables | ✅ | - |
| Links | ✅ | - |
| Images | ✅ | - |
| Slash Commands | ✅ | - |
| Drag Handle | ✅ | - |
| Character Count | ✅ | - |
| Text Color / Highlight | ✅ | - |
| Markdown Import/Export | - | ✅ |
| Mathematics (LaTeX) | - | ✅ |
| Embeds (oEmbed) | - | ✅ |
| Collapsible Details | - | ✅ |
| Diagrams (Mermaid) | - | ✅ |
Quick Start
Choose your framework to get started:
Or jump directly to:
- Getting Started - Installation and basic setup
- Configuration - Editor options and customization
- Features - Enable and configure features
- Theming - Customize appearance with CSS variables