The tiny runtime library for building web user interfaces.
Declarative
Express your UI simply in terms of data (JS) and templates (HTML & CSS) and Synergy will update your UI efficiently whenever your data changes.
Component-driven
Build encapsulated and reusable custom elements and then compose them together to make complex UIs.
Interoperable
Create standalone components that will work together with any other framework or library.
A Simple Custom Element
<script type="module">
import synergy from "https://unpkg.com/synergy";
synergy.define(
"hello-world",
({ name }) => ({
name,
}),
"<p>Hello {{ name }}</p>"
);
</script>
Now that your custom element is defined, you can use it anywhere inside the document...
<hello-world
name="kimberley"
></hello-world>