Drag and drop any block to rearrange content in Obsidian β just like Notion.
- π§± 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)
Open Settings β Community plugins β Browse, search Dragger, and install.
- Install the BRAT plugin
- In BRAT settings, click Add Beta Plugin and enter:
Ariestar/obsidian-dragger - Enable the plugin in Settings β Community plugins
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.
- Hover on the left edge of any block to reveal the drag handle
- Drag the handle to the target position β a glowing indicator shows where the block will be inserted
- 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.
| 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 |
- Obsidian β₯ 1.0.0
- Desktop (Windows, macOS, Linux) + Mobile (Android tested)
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 checkingPRs and issues are welcome!
If this plugin helps you, a β on GitHub would mean a lot.
