Brix: Lightweight CLI tool that packages web apps into standalone Windows executables using native WebView2.
Brix is a high-performance CLI designed to transform modern web projects into lightweight, standalone Windows applications. By leveraging the native WebView2 runtime, Brix eliminates the overhead of Electron while providing a professional, branded host for your code.
Features include:
- Custom protocol asset serving
- Embedded backend support
- SHA-256 verification
- Installer generation
Brix is a Windows-only runtime — the native host is built on the system WebView2 engine and Win32 APIs, and the crate refuses to compile on any other OS (#![cfg(not(windows))] compile_error!). This is a deliberate stance, not a gap:
- Build from anywhere. The
brixCLI is plain Node, and Brix ships a prebuiltstub.exe, so you can produce Windows.exefiles from Windows, macOS, or Linux CI — only the resulting app runs on Windows. - Run on Windows 10/11. The evergreen WebView2 runtime is already present on consumer Windows; for offline/locked-down machines pin it with
webview2.fixedRuntimePath.
When using Brix, your app's structure revolves around a .brix configuration file. After building, the compiled executable lands in a designated output folder.
| Location | Contents |
|---|---|
%LOCALAPPDATA%\brix_<name> |
WebView2 user data, backend.log + backend-error.log (sidecar output) |
%LOCALAPPDATA%\brix\brix-crash.log |
Startup failures (also logged with --verbose) |
%TEMP%\brix_<name> |
Server-mode extraction + backend working directory |
| next to the exe | nothing — works when installed to read-only locations like Program Files |
Just two commands — Brix stages, bundles, brands, and stitches everything for you.
npm install -g brixpackagerFrom anywhere, point Brix at your project (the folder containing .brix — or pass the .brix file directly):
brixpack build my-projectYour branded, standalone .exe lands in my-project\Brix_Works\ — your source folder stays completely untouched (no staging folders, no stray files).
| Command | What it does |
|---|---|
brixpack init [project] |
Scan a project and write a .brix config. |
brixpack build [project] |
Bundle project into a standalone exe. |
brixpack build [project] --out <dir> |
Write the exe to <dir>. |
brixpack build [project] --list |
Dry run: print every file that would be bundled. |
brixpack init installer [project] |
Interactive wizard: pick an installer type. |
brixpack make [zip|inno|nsis|msi] |
Build the installer. |
💡 Both
brixpackandbrixcommand names work.
Explore the full potential of Brix, including window customization and deep framework integration.
- 👉 JSON Syntax Reference — every key of
.brixandinstaller/installer.json. - 👉 Features & Use Cases — scenarios, comparisons (Electron/Tauri), and testing results.
Brix is created by a solo developer, HaadiAli, building this for fun and optimized for the modern web.
© 2026 HaadiAli (https://github.com/haadiali242)