Find your next open-source project

Search by name, purpose, or keyword — or paste a GitHub repository URL

declarative-dragging/dragology

Developer Tools

A TypeScript library for building model-driven, composable drag-and-drop interfaces, especially for SVG on the web.

177
9
TypeScript
MIT
8 days old

Overview

Dragology is a TypeScript library for building high-quality drag-and-drop interfaces on the web, with a focus on SVG. Its design centers on two ideas: model-driven dragging, where the drag interaction follows an explicit model rather than ad-hoc event handlers, and composable dragging, where smaller behaviors can be combined into richer interactions. It is aimed at React/TypeScript developers who need direct-manipulation UIs beyond what basic HTML5 drag-and-drop offers.

The conceptual background is presented on the Declarative Dragging site, while the README is meant as a usage starting point.

Getting started

The package is published to npm, so install it in an existing project:

npm install dragology

Any package manager can be used according to the README. There is currently no full API documentation. The README points to three practical resources instead: the Declarative Dragging homepage for the underlying concepts, a self-contained consumer example showing Dragology imported into a Vite project, and interactive demos whose source lives in src/demos.

To run the demos locally, clone the repository and run:

pnpm install
pnpm run dev

Then open the Vite dev server URL printed by the CLI (typically http://localhost:5173) to view auto-refreshing demos per the repository instructions.

Constraints

  • The repository is written in TypeScript and targets web/SVG use; the documented example setup uses Vite with pnpm, and package installation is via npm or another package manager.
  • Documentation is incomplete. The README states that no official documentation has been prepared and that docs/AGENTS.md, written by LLMs for LLMs, is offered in place of real docs.
  • Working inside the repository requires pnpm, while using the library as a dependency does not require cloning the repo.
  • The project is MIT-licensed.

HotRepo's take

The repository has 105 stars and 6 forks. It appeared on HotRepo's new-project list for TypeScript on 2026-11-04, adding 4 stars in the observed hour-long window; no all-language daily rank has been recorded. With only a single snapshot and a short sampling window, there is not enough same-scope history to describe a trend. What stands out technically is the project's positioning: it treats dragging as a model-driven, composable problem rather than a bag of event handlers, and it ships runnable demos and a consumer example as its main onboarding path while documentation is still missing.

Written by AI from the project's README, updated . The project's own docs are the source of truth.