Yes, you write native HTML, CSS and JS and create a native web-components W3C compliant.
It's stable and predictable.
If you have ever played with Web-Component-like frameworks (not to name Vue, React, Svelte…), you may know how debugging gets tricky and requires extra tooling.
Because LEGO is native, your browser developper toobar is all you need.
debugger
works as expected,It's all just normal!
Because buildless is becoming a thing, we can know give it a name that speaks to all.
/bricks/lean-welcome.html:
<template>
<h1>Welcome to LEGO</h1>
<p>The lean way to make web-components <slot></slot></p>
</template>
Later you can use it anywhere in your HTML:
<lean-welcome>powerful and easy</lean-welcome>
Will read in your HTML:
Welcome to LEGO
The lean way to make web-components powerful and easy
Of course there's so much more you can do. The documentation will guide you 📓
Pretty neat!
You can just hop in and experiment your first HTML Element.
Follow this Getting Started guide for installing and writing your first component.
Once you're done with it you can write more components the same way and play with daily usage guide for passing advanced arguments, writing conditions and loops, dynamic styling, connecting to APIs…
You can create a simple reusable web-components for your HTML website or build a full fledge app with it. It's as light as powerful, fully driven by the web-browsers standards.
Various applications are running Lego in production for years now.
Because of the standards and the zero dependency you can rely on it for the long term.
Your site/app will still running and remain editable in 10+ years, and as long as web browsers will exist.
LEGO (Lightweight Embedded Gluten-free Objects) is a base class that you extend and provide you with methods to use ♻️ reactive and 🏡 native web-components that are easy to digest 🌱 for your browser.
A small CLI in NodeJS come along to build 🚀 your component. There's no Vite nor other 3rd parties, it's just an interpreter of ±180 lines of readable code.
:if
for conditions, :for
for loops, @myfuncname
to call an actionLego is not (and will never be):
🧪 View the demo and their source.
📕 Read the full documentation at https://lego.js.org
💭 Lego is inspired from the native Web-Component spec and Riot.
🔧 Customizing and contributing is just much lighter with simplicity, source that are easy to read, to hack and to maintain.
🎈 You can read the core code that is only 61 LOC resulting that Lego is as light as 3Kb for the full bundle!