zero-native - Compila apps de escritorio + móviles con Zig y una UI web
(github.com/vercel-labs)- Framework de shell de app de escritorio basado en Zig publicado por Vercel Labs, que convierte frontends web en apps nativas para macOS/Windows/Linux
- Al usar el WebView del sistema, no empaqueta un runtime de navegador, por lo que el binario es pequeño y arranca rápido
- Si se necesita consistencia de renderizado, se puede cambiar a un bundle de Chromium (CEF) y elegir el motor web en
app.zon(archivo de manifiesto) - Como Zig llama a C directamente, no se necesita una capa de glue adicional para acceder a SDKs de plataforma, librerías nativas y códecs
- Adopta por defecto un modelo de seguridad que no confía en WebView: comandos nativos, permisos, navegación y APIs de ventana funcionan todos con opt-in
- Al invocar el bridge de JavaScript → Zig con
window.zero.invoke(), se aplican límites de tamaño, verificación de origen y verificación de permisos - Incluye plantillas starter de frontend para Next, React, Svelte y Vue, y se puede ejecutar de inmediato con
zig build run - Actualmente está en prerelanzamiento y soporta rutas de compilación para macOS/Linux/Windows
- En móvil, usa un esquema de embebido donde las apps host de iOS/Android enlazan la C ABI de
libzero-native.a(incluye ejemplos) - Licencia Apache-2.0
10 comentarios
Parece que este proyecto demuestra que se está acabando la época en la que, por quedar atrapados en la comodidad de la abstracción, se renunciaba al rendimiento de ejecución. Los binarios ligeros y la rápida capacidad de respuesta son la esencia de la experiencia de usuario y la funcionalidad más poderosa.
Estoy de acuerdo. Especialmente en una época como la actual, en la que la memoria es cara, creo que todavía más.
Al final, ¿no se trata de convertir una web app en una app nativa? No lo tengo muy claro. ¿Sería una mejor alternativa que un builder de PWA..
Las PWA no crean una app nueva, solo hacen que un sitio web funcione como si fuera una app.
Electron, Tauri o cosas como zero-native son frameworks que te permiten crear apps nativas con tecnologías web.
La diferencia frente a una PWA es que pueden acceder al SO mediante APIs nativas.
Parece que OpenCode Desktop se pasó de Tauri a Electron por varias razones.
https://x.com/brendonovich/status/2045725889422610602
Está buenísimo T_T qué felicidad
Parece que últimamente en Vercel el desarrollo basado en IA ya se consolidó, porque están sacando muchísimas cosas nuevas.
También van muy rápido agregando funciones a lo que ya tenían. agent-browser, portless, json-render, etc.
Zero-native da un poco la impresión de ser como una versión de Tauri hecha en Zig.
Tauri (Rust) vs Zero-Native (zig) vs Wails (go)
Lanzamiento oficial de Tauri 2.0
Wails - Framework para desarrollar aplicaciones de escritorio usando Go
Los resultados recientes de vercel labs prácticamente los está sacando Chris Tate él solo, y la verdad es que me parece algo impresionante.
https://x.com/ctatedev
Aun así, ¿no es Electron el que ofrece más estabilidad?
Electron, de entrada, ya es demasiado pesado empezando por el consumo de memoria. Para las apps a las que les basta con la WebView del sistema, me parece que este tipo de alternativas son mejores.