Can You Render JSX on Windows Without a Browser? I Built an Engine to Find Out.
A while ago, we shared an update mentioning that LeveloJS was rethinking its architectural foundation.
As the founder and lead developer of the project, I asked myself a question that felt unreasonable for a small setup:
Can we write regular JavaScript and JSX, yet render it directly onto an operating system window with zero Chromium, zero V8, and zero WebView?
I wasn’t interested in wrapping another browser inside an .exe. I wanted to find out what happens when you treat standard JSX as the direct blueprint for native, hardware-accelerated 2D graphics.
Today, I had one of those moments where I just sat back and stared at my monitor.
I ran the exact same JSX component on Google Chrome and inside the newly engineered LeveloJS Windows Native Host (levelo-windows).
I placed the two windows side by side.
The typography hierarchies (h1 through h6), the CSS Flexbox alignments, the dynamic button paddings, and the character measurements looked identical.
If you didn’t look at the title bar of the window, you honestly couldn't tell which one was the browser and which one was running directly on bare native pixels.
This Is Not an Official Release
Let me be completely transparent from the start: this is not a production release.
I haven't solved everything yet. Text input fields still need more platform wiring, complex scrolling is in the pipeline, and I still have edge-case node cleanups to refine.
This is an early engineering milestone. It is practical proof that our hypothesis—which felt like an impossible risk when we started—actually works.
Why I Refused the Existing Choices
When web developers want to target the desktop, they are usually forced into two paths:
The WebView / Chromium Path (Electron, Tauri): You ship an entire browser or hook into the OS webview. It works, but your app inherits the massive complexity, startup lag, and memory footprint of a web browser.
The New Vocabulary Path (React Native): You keep JSX, but you lose the web primitives you know. You cannot simply drop in a button, h1, or div—you have to relearn layout models around platform-specific components like View and Text.
I wanted a third path.
What if a developer could keep their familiar web-style primitives, but the engine underneath stripped away the browser entirely and spoke directly to the operating system?
What Is Actually Happening Under the Hood?
The architecture is broken into four distinct layers:
QuickJS (The Embedded Runtime): Instead of pulling in hundreds of megabytes of V8 or Node.js runtime, I embedded QuickJS. It gives us standard ES2023 compliance, instant startup, and runs on a fraction of the memory.
Zero-Copy OpCode Bridge: When a component updates, there is no Virtual DOM tree diffing. LeveloJS emits direct atomic operation codes (CreateElement, SetStyle, AppendChild) directly over a low-overhead FFI boundary into Rust.
Taffy (The Layout Engine): Emulating browser layout by guessing coordinates is a trap. I wired the W3C Flexbox specification using Taffy. Every container, child, margin, and alignment calculation is solved natively by Rust according to true CSS standards.
Skia (The Drawing Engine)*: Once Taffy computes the spatial bounds, pixels are blitted directly to the native OS window using Skia—the exact same high-performance 2D graphics engine that powers Google Chrome and Flutter.
Because the Web target and Native target are completely decoupled, a web application never loads or ships a single byte of native Rust binaries, and a native application never runs an embedded browser.
The Collaboration Behind the Journey
While I architected the core LeveloJS foundation, designed the CLI toolchain, and built the levelo-windows host from scratch, LeveloJS is also growing through collaboration.
My contributor, Joseph Nicholas Aburu—an experienced developer with over a decade of programming background—joined this journey to help explore what a truly multi-platform architecture can become. Having his insights and collaboration on optimization, ideas, and architecture reviews has been an invaluable asset in shaping the project's evolution.
Open source is built on shared passion, and LeveloJS reflects that spirit.
How I Actually Fixed the Rendering Parity
Getting rectangles to draw on a canvas is easy. Getting a native engine to match the nuanced typography, auto-sizing dynamic buttons, and hit-testing behavior of a modern web browser is brutal.
I spent weeks fighting alignment offsets, layout trees, and coordinate bugs. There were moments when my brain stopped working, the layout fell apart, and building my own engine felt like an overwhelming mistake.
It didn't magically fix itself. I had to tear down the rendering pipeline, isolate the Skia rendering logic from the layout calculations, and audit every single file step by step to trace where the coordinates were drifting.
By letting Taffy handle pure CSS Flexbox constraints and stripping away manual layout hacks from the Skia canvas layer, the pieces finally aligned through deliberate debugging:
- Dynamic buttons began sizing and wrapping cleanly around their text content.
- The Flexbox engine centered elements exactly where Chrome centered them.
- Mouse events mapped directly to native event handlers, triggering real-time reactive state updates without lag.
I proved that you don't need a full browser engine just to render modern declarative UI.
What’s Next?
I am taking this step by step.
The next engineering priorities include:
- Completing remaining tree-cleanup and lifecycle edge cases.
- Expanding form controls and text inputs.
- Researching the pipeline for Android and other platforms.
We don't claim to have all the answers, and we know there is a long road ahead. But building software is about having the courage to explore problems that others avoid.
I put my trust in Allah, we did the work, and the foundation is now alive and running.
LeveloJS is built and maintained under Motion Mind X.
Founder & Lead Architect: MD Saiful Alom Siam (@MotionMind2007)
Contributor: Joseph Nicholas Aburu (@Joseph4sure)


