@vasilvelikov/effective-ui
    Preparing search index...

    @vasilvelikov/effective-ui

    effective-ui

    npm version MIT License PRs welcome

    Composable, effect-based UI framework built on Effect.ts

    Experimental — work in progress. The API is unstable and subject to change.


    • Everything is an Effect
    • Declarative DOM via tag, text, children
    • Tree-shakable for smaller builds
    • Composable routing with dynamic path + query support
    • Async data fetching with loading/error fallback
    • Predictable UI pipes
    • Pure, memoizable components (no diffing or VDOM)

    pnpm install @vasilvelikov/effective-ui
    

    import { dom, runtime } from "@vasilvelikov/effective-ui";

    const App = dom.tag(
    "div",
    dom.children(
    dom.tag("h1", dom.children(dom.text("Hello from effective-ui"))),
    ),
    );

    Effect.runPromise(runtime.mount(App, "#root"));

    For more information check out the docs


    This repo includes examples that you can run locally.

    pnpm install
    pnpm run example counter

    Then open http://localhost:5173 in your browser.


    src/           → the core UI framework
    examples/      → runnable examples
    

    • Predefined components - planned
    • Theming - planned
    • SSR/streaming support - maybe

    Want to contribute? See the Contributing Guide.

    See CHANGELOG.md for release history.