**Project:** [zero-native](https://github.com/vercel-labs/zero-native) by [antirez](https://github.com/antirez) | ⭐ 2,743 | Zig | [github.com/vercel-labs/zero-native](https://github.com/vercel-labs/zero-native)

---

## Project Introduction

zero-native is a pre-release desktop app shell from Vercel Labs that lets you build native macOS, Linux, and Windows applications using web frontends — no bundled browser runtime required. Created by Salvatore Sanfilippo (antirez, the legendary creator of Redis), this project drops a tiny Zig native layer that renders your web UI through the platform's native WebView (WKWebView on macOS, WebKitGTK on Linux). For apps that need consistent cross-platform rendering, it also supports bundling Chromium through CEF. The result: binaries stay small, memory footprint stays low, and startup stays instant.

## Key Features

- **Tiny binaries, zero browser bundle.** System WebView apps sidestep the overhead of shipping a full Chromium runtime. Your native shell is just a lean Zig binary — making distribution and installation trivial.
- **Choose your web engine per app.** Use the platform WebView for maximum lightness, or switch to Chromium/CEF when you need pinned, consistent web platform behavior across all platforms.
- **Zig bridge: window.zero.invoke().** The JS-to-Zig bridge is explicit and policy-controlled. Every call is size-limited, origin-checked, and permission-checked before reaching registered handlers — keeping the native layer safe by default.
- **app.zon manifest.** A single manifest file declares your app metadata, windows, web engine, security policy, bridge permissions, and packaging inputs — keeping configuration centralized and reproducible.

## Community Discussions

**Issue #17 — "No binary found for darwin-x64"** *(0 comments — active bug report)*

> *User edwardxie reports:* "I run zero-native doctor and it told me no binary for darwin-x64... Please add a pre-build binary for macOS ARM/Intel users."

This highlights a rough edge in the current pre-release experience: the CLI tool downloads pre-built binaries for detected platforms, but not all architecture/target combinations are covered yet. The workaround (run `npm run build:native` locally) works but defeats the point of having a pre-built distribution. Vercel Labs is aware and tracking this for the post-1.0 release pipeline.

**Issue #18 — "feat: disable window decorations option"** *(0 comments — feature request)*

> *Feature request:* "It would be great to have an option to disable the native window decorations (titlebar + traffic lights) so apps can render a fully custom titlebar in the web view."

This request captures a key tension in cross-platform native app development: web developers want pixel-perfect custom titlebars, but platform conventions (traffic lights on macOS, standard window chrome on Windows/Linux) exist for discoverability. The team is evaluating whether to expose this as a first-class app.zon option.

## Summary

zero-native is a compelling experiment from Vercel Labs for developers who want to ship native desktop apps using the web stack they already know — without the weight of Electron. With Zig powering the native bridge, rebuilds are fast and platform SDK integration stays clean. It's pre-release, so expect some rough edges (platform binary gaps, evolving API), but the core architecture is solid and actively evolving. If you're a web developer curious about going native without Electron overhead, zero-native is worth watching.

---

*@antirez · [zero-native on GitHub](https://github.com/vercel-labs/zero-native)*