Introduction β
What is Esor? β
Esor is a modern, minimalistic web framework based on Web Components, designed to create high-performance, interactive user interfaces. It combines the power of native web standards with an elegant responsive system, offering a smooth and productive development experience.
import { component, html, signal } from "esor";
component("hello-world", () => {
return html`<h1>Β‘Hola, mundo!</h1>`;
});
WARNING
Esor is in version: beta
, use it wisely, it is not yet ready for production.
Why Esor? β
π Exceptional Performance β
Esor uses native Web Components and a fine-grained reactivity system, resulting in fast and efficient applications with minimal bundle size.
π‘ Intuitive and Familiar β
If you know HTML, CSS and JavaScript, you'll feel right at home. Esor takes familiar patterns and enhances them with modern features:
import { component, html, signal, effect } from "esor";
component("user-profile", () => {
const user = signal({ name: "Ana" });
effect(() => {
console.log("Nombre actual:", user().name);
});
return html`
<div class="profile">
<h2>${() => user().name}</h2>
<button onclick=${() => user({ name: "Juan" })}>Cambiar Nombre</button>
</div>
`;
});
π§ Flexible and Extensible. β
- Uses modern web tools and standards
- Integrates seamlessly with other libraries
- Works with your favorite development tools
π¦ Everything You Need, Nothing More β
- Standards-based component system
- Granular responsiveness with signals
- Powerful and efficient template system
- Intuitive hooks for state and effect management
- Zero dependencies
Main features β
π Native Web Components β
Reusable components based on web standards.
β‘ Granular Reactivity β
System signals for accurate and efficient updates.
π Expressive Templates β
Powerful declarative syntax for defining interfaces.
π― Developer Experience β
Intuitive APIs and modern development tools.
Comparison with Other Frameworks β
Feature | Esor | Lit | React |
---|---|---|---|
Base | Web Components | Web Components | Virtual DOM |
Reactivity | Signals | Properties | Hooks |
Bundle Size | ~3KB | ~5KB | ~40KB |
Learning Curve | Baja | Media | Media |
Ecosystem | En crecimiento | Maduro | Muy grande |
Who is Esor for? β
Esor is ideal for:
- π― Developers who value simplicity and performance.
- π§ Projects that need reusable web components.
- π Applications that require high performance
- π Teams that prefer modern web standards
Next Steps β
ADVICE
Esor is designed to be adopted gradually. You can start with a single component in your existing application and grow from there.
NOTE
Esor requires modern browsers that support Web Components. See the compatibility table for more details.