Virgool (Persian: ویرگول, from French virgule) is the comma ، — a pause between thoughts, inspiring a distraction-free space where ideas flow naturally and writing finds its rhythm.
Virgool Editor is a local-first writing tool with rich formatting, syntax-highlighted code blocks, and one-click export to Markdown, HTML, or JSON. Auto-save keeps your draft in the browser—no account required.
- Bubble menu: bold, italic, headings (H1–H3), and links
- Floating menu: images (URL + alt text), YouTube embeds, code blocks with Shiki syntax highlighting, blockquotes, bullet and ordered lists
- Copy as Text, Markdown, HTML, or JSON
- Export to file: Text, Markdown, or HTML
- Import and save JSON documents
- Optional auto-save to
localStorage(toggle in the Document menu)
- Light and dark theme
- Writing font picker with Google Fonts (serif, sans, mono, and RTL-friendly fonts such as Vazirmatn)
| Layer | Technologies |
|---|---|
| UI | React, Tailwind CSS, Shadcn UI |
| Editor | Tiptap, Shiki, Turndown |
| State | Zustand |
| Tooling | Vite, TypeScript, ESLint, Prettier, pnpm |
git clone https://github.com/thisisrexa/virgool-editor.git
cd virgool-editor
pnpm install
pnpm devpnpm build
pnpm previewpnpm lint
pnpm format| Command | Description |
|---|---|
pnpm dev |
Start the development server |
pnpm build |
Typecheck and create a production build |
pnpm preview |
Preview the production build locally |
pnpm lint |
Run ESLint |
pnpm format |
Format code with Prettier |
- Keyboard shortcuts reference
- Customizable themes
Contributions are welcome. Fork the repo, create a branch, and open a pull request. For bugs or feature ideas, open an issue.
MIT © Rexa (2024)