Skip to content

v2.1.0 — Svelte 5 and Vanilla JS/TS Adapters

Choose a tag to compare

@thesandybridge thesandybridge released this 22 Feb 19:30
· 56 commits to main since this release
8230c31

v2.1.0 — Svelte 5 and Vanilla JS/TS Adapters

Two new framework adapters join the monorepo alongside the existing React adapter and framework-agnostic core.

New Packages

@dnd-block-tree/svelte — Svelte 5 adapter

npm install @dnd-block-tree/svelte @dnd-kit/svelte @dnd-kit/dom svelte
  • 8 components: BlockTree, TreeRenderer, DraggableBlock, DropZone, DragOverlay, GhostPreview, BlockTreeSSR, BlockTreeDevTools
  • 3 runes-based state factories: createBlockState, createTreeState, createBlockHistory
  • Collision detection bridge for @dnd-kit/svelte
  • Snippet-based rendering with {#snippet renderBlock()}

@dnd-block-tree/vanilla — Vanilla JS/TS adapter

npm install @dnd-block-tree/vanilla
  • Two-layer architecture: headless controller + optional default renderer
  • Built-in pointer, touch (long-press + haptic), and keyboard sensors
  • Opt-in undo/redo history, FLIP layout animation, virtual scroller
  • Data attributes for pure CSS styling (data-dragging, data-selected, data-zone-active, etc.)
  • Zero framework dependencies — only requires @dnd-block-tree/core

Infrastructure

  • Publish workflow now runs adapter publishes (react, svelte, vanilla) in parallel after core succeeds

Documentation

  • 6 new doc pages covering Svelte and Vanilla APIs
  • Updated Installation & Setup with framework-specific guides
  • Quick start examples for all three adapters (React, Svelte, Vanilla)
  • New Svelte API and Vanilla API sidebar navigation groups

Fixes

  • Pinned react adapter's core dependency to ^2.0.0 (was *)

Packages

Package Version
@dnd-block-tree/core 2.1.0
@dnd-block-tree/react 2.1.0
@dnd-block-tree/svelte 2.1.0
@dnd-block-tree/vanilla 2.1.0