Skip to content

A lightweight UI framework for declarative DOM manipulation, alternative to React, Vue and jQuery for small projects.

License

Notifications You must be signed in to change notification settings

blinkblinkhq/echox

Repository files navigation

EchoX: UI = f(DOM, Reactive)

Note

Work in progress. The APIs are not stable right now.

A lightweight reactive UI framework for declarative DOM manipulation, alternative to React, Vue and jQuery for small projects.

import {html, reactive} from "echox";

const [state] = reactive()
  .state("value", 0)
  .computed("double", (d) => d.value * 2)
  .effect((d) => console.log(d.value, d.double))
  .join();

const counter = html.div([
  html.button({onclick: () => state.value++}, ["👍"]),
  html.button({onclick: () => state.value--}, ["👎"]),
  html.span([() => state.double]),
]);

document.body.appendChild(counter);

Resources 📚

License 📄

MIT@Bairui SU

About

A lightweight UI framework for declarative DOM manipulation, alternative to React, Vue and jQuery for small projects.

Resources

License

Stars

Watchers

Forks