DEV Community

Cover image for Announcing ElementsKit: a toolkit of reactive primitives for building the web UI
Wael
Wael

Posted on

Announcing ElementsKit: a toolkit of reactive primitives for building the web UI

I'm happy to announce ElementsKit: a toolkit of reactive primitives for building the web UI. Signals, JSX, custom elements, and utilities. Use them standalone, compose them, or use them inside React, Svelte ...

› Compose, don't configure. signal, computed, on, fromEvent, async. Combine primitives instead of maintaining an overloaded interface. Overloaded interfaces accumulate breaking changes and deprecation every consumer has to track.

› Close to the platform. JSX compiles to document.createElement. promise extends Promise. async is awaitable. A custom element is an HTMLElement. No virtual DOM, no proxies, no build steps.

› Predictable and explicit (no magic). signal/compose are reactive; nothing else is. No heuristic dependency tracking, no hidden subscriptions.

› Designed for the AI age. Code is cheap; maintenance still isn’t. Primitives compose into higher-level blocks. Swap one block at a time instead of maintaining long lines of code.

› Bundler-friendly. Every primitive is its own subpath — elements-kit/signals, elements-kit/utilities/media-query, elements-kit/integrations/react. Import only what you need.

Source code: https://github.com/waelbettayeb/elements-kit
Docs: https://elements-kit.quba.co
Why?: https://elements-kit.quba.co/getting-started/philosophy

Top comments (0)