Skip to content

Latest commit

Β 

History

History
92 lines (61 loc) Β· 3.43 KB

File metadata and controls

92 lines (61 loc) Β· 3.43 KB

English δΈ­ζ–‡

Dragger

Drag and drop any block to rearrange content in Obsidian β€” just like Notion.

Obsidian License Release

gif

Features

  • 🧱 Block-level drag & drop β€” paragraphs, headings, lists, tasks, blockquotes, callouts, tables, code blocks, math blocks
  • πŸ“ Nested drag β€” horizontal position controls indent level; vertical position controls insertion row
  • πŸ”— Multi-line selection drag β€” long-press or click to select a range, then drag as a group
  • 🎨 Customizable handles β€” 4 icon styles (dot / grip-dots / grip-lines / square), adjustable size, color, and horizontal offset
  • πŸ“ Visual drop indicator β€” glowing line shows exactly where the block will land
  • πŸ“± Mobile support β€” works on Android (tested)

Installation

Community Plugins

Open Settings β†’ Community plugins β†’ Browse, search Dragger, and install.

BRAT (Beta)

  1. Install the BRAT plugin
  2. In BRAT settings, click Add Beta Plugin and enter:
    Ariestar/obsidian-dragger
    
  3. Enable the plugin in Settings β†’ Community plugins

Manual

Download main.js, manifest.json, and styles.css from the latest release, then copy them into:

<your-vault>/.obsidian/plugins/dragger/

Restart Obsidian and enable the plugin.

Usage

  1. Hover on the left edge of any block to reveal the drag handle
  2. Drag the handle to the target position β€” a glowing indicator shows where the block will be inserted
  3. Release to drop the block into place

Nested lists & blockquotes: move the cursor horizontally while dragging to control indent level.

Multi-line selection: long-press (touch) or click multiple handles to select a range, then drag the entire selection.

πŸ’‘ Tip: Enable line numbers in Obsidian settings for a better experience β€” the handle appears right at the line-number gutter.

Settings

Setting Description Default
Handle color Follow theme accent or pick a custom color Theme
Handle visibility Hover / Always visible / Hidden Hover
Handle icon ● Dot / β Ώ Grip-dots / ☰ Grip-lines / β–  Square Dot
Handle size 12 – 28 px 16 px
Handle horizontal offset Shift handle left (βˆ’80) or right (+80) px 0 px
Indicator color Follow theme accent or pick a custom color Theme
Multi-line selection Enable range-select-then-drag workflow On

Compatibility

  • Obsidian β‰₯ 1.0.0
  • Desktop (Windows, macOS, Linux) + Mobile (Android tested)

Development

npm install
npm run dev       # watch mode with hot reload
npm run build     # production build
npm run test      # run Vitest suite (116 tests)
npm run typecheck # TypeScript type checking

License

MIT

Contributing

PRs and issues are welcome!

If this plugin helps you, a ⭐ on GitHub would mean a lot.