Sigment is built to be simple and fast. One of the ways we achieve this is by completely skipping JSX. In this article, we’ll explore why dropping JSX results in faster compilation, simpler tooling, and a cleaner developer experience.
What Is JSX?
JSX (JavaScript XML) lets you write HTML-like syntax inside JavaScript. While it’s common in frameworks like React, browsers don’t understand JSX directly. It must be compiled into native JavaScript before running.
const element = <h1>Hello, world!</h1>;
That compiles to:
const element = React.createElement("h1", null, "Hello, world!");
This compilation step slows things down and adds tooling overhead.
The Case Against JSX
1. Slower Compile Time
Every JSX file must be transpiled on every save. This adds friction to your development loop.
2. Tooling Complexity
JSX requires Babel, plugins, loaders, and extra config — more machinery than native JS.
3. JSX Isn’t JavaScript
JSX isn’t valid JS syntax, so you can’t run it directly in the browser console or environments without transpilation.
4. Hidden Runtime Work
JSX creates virtual DOM trees, which the browser must diff and patch — overhead for simple components.
What We Use Instead
Sigment uses plain JavaScript functions to create DOM elements. No compilation, no magic, just fast and expressive code:
div({ class: "box" }, "Hello, world!");
This integrates naturally with signals and fine-grained reactivity.
Benefits of No JSX
- Faster hot reloads — no transpile delay.
- Zero-config setup — no Babel or JSX plugins needed.
- Closer to the platform — real JavaScript and real DOM.
- More control — easier to debug and optimize.
Conclusion
JSX is popular but not essential. Sigment skips JSX to deliver better performance, faster compilation, and a simpler developer experience. Build modern apps close to the browser, and feel the speed.