30 puntos por xguru 2022-08-23 | 6 comentarios | Compartir por WhatsApp

Comparación por apartados con una app 2FA multiplataforma llamada Authme

  • Paquete: Tauri, que usa la webview del sistema operativo, es mucho más pequeño. 2.5MB vs. 85MB
  • Tiempo de arranque: Tauri ~2 segundos vs. Electron ~4 segundos
  • Uso de RAM:
    • En Windows, Tauri 80MB y Electron 120MB, así que no hay una gran diferencia
    • En Linux, Tauri 80MB, mientras que en Electron se levantan muchas cosas y supera los 500MB, por lo que la diferencia es grande
  • Backend de la app: Electron usa el runtime de Node.js, así que basta con programar en JavaScript, pero Tauri requiere programar en Rust
    • Según la hoja de ruta de Tauri, también planean dar soporte a Python, C++ y Deno
  • Renderizado: Electron usa Chromium en Windows/macOS/Linux, mientras que Tauri usa Windows (Edge WebView2) / Linux (WebKitGTK) / macOS (WebKit)
    • Como puede haber diferencias entre navegadores, en Tauri a veces hace falta usar polyfills
  • Seguridad: Tauri incorpora muchísimas funciones de seguridad y es seguro por defecto
  • Actualizaciones automáticas:
    • Del lado de Tauri es más simple. Tiene un Updater integrado (aunque tiene la desventaja de que debes operar tu propio servidor de actualizaciones)
    • En Electron se usa mucho electron-updater. Su ventaja es que puede tomar los binarios directamente desde GitHub Releases, lo que resulta práctico
  • Experiencia de desarrollador:
    • En Tauri, con solo instalar el CLI ya puedes usar todo de inmediato (hot reloading, bundling, generación de apps, etc.)
    • Electron no trae eso; solo entrega el framework en sí. El hot reloading y el bundling hay que resolverlos por cuenta propia
    • La mayor ventaja de Tauri es que es compatible con todos los frameworks web

Conclusión

  • Elegir Tauri
  • Todavía le faltan algunas cosas, pero en unos años el equipo de Tauri alcanzará a Electron
  • Lo que más entusiasma es poder usar Deno como backend, además de contar con actualizaciones automáticas más cómodas y soporte para iOS/Android

6 comentarios

 
joone 2022-08-29

Parece que Tauri no usa un motor propio, sino la biblioteca webview que ya está en el sistema.

 
kayws426 2022-08-23

Al comparar el tamaño del instalador, es 2.5MB vs. 85MB,
y después de la instalación queda en 3.64MB vs. 221MB.

 
ifmkl 2022-08-23

¡Guau, esto se ve bien!

 
jjpark78 2022-08-23

Tengo muchas ganas de que también tenga soporte para apps móviles.

 
freedomzero 2022-08-23

Como Rustacean, me alegra mucho ver crecer el ecosistema de Rust. Tengo que tener abiertas hasta 3 apps de Electron en mi Mac y la MacBook se calienta muchísimo :(

 
xguru 2022-08-23

Tauri - framework de aplicaciones web para escritorio que genera ejecutables pequeños y rápidos
Lanzamiento de Tauri v1.0

En la parte de seguridad a mitad del artículo se dice que Electron puede tener acceso completo a la API de Node,
pero nodeIntegration tiene false como valor predeterminado desde la versión 5.0, y desde la 20.0 se aplica sandboxing, así que Electron también es razonablemente seguro.
https://www.electronjs.org/docs/latest/tutorial/security