«Código abierto, pequeño, seguro, ¿por qué quemar el mundo?» – Escuche a uno de los principales desarrolladores de Toros Describa sus motivos en Cambio El podcast me hizo pensar en cómo los desarrolladores eligen crear pequeñas aplicaciones nativas. Tauri fue creado para la comunidad de ingeniería de software que está «enfocada en la seguridad, consciente de la privacidad y ecológica» (es decir, de tamaño pequeño y menos intensiva en energía). ¿Cómo se relaciona esto con las decisiones promedio de los desarrolladores?
Trabajar en la mejor técnica para escribir una aplicación mantenible termina equilibrando dónde se encuentra, lo que sabe y lo que está disponible.
Si desarrolla detrás de un firewall corporativo, es posible que deba contentarse con lo que le permite su realidad reducida. Las aplicaciones suelen ser herramientas, y algunas de ellas necesitan conocer su sistema de una manera que no se puede confiar en las herramientas basadas en la web. Pero solo por el bien de la eficiencia, tiene sentido usar la interfaz de usuario y el sistema de ventanas del dispositivo de destino.
¿Dónde está Tori?
Tauri es un marco para crear aplicaciones de escritorio con cualquier marco de front-end y kernel de Rust. Cada aplicación consta de dos partes:
- Rust binario que crea ventanas y muestra las funciones originales de esas ventanas
- Una interfaz web de su elección que produce la interfaz de usuario dentro de la ventana
El tono de Tauri Elevator puede parecer un poco paradójico al principio: use tecnologías web para crear aplicaciones nativas. Obviamente, la mejor manera de mostrar HTML, JS y CSS es en el navegador, pero ese no es el final de la historia. Estas técnicas se convirtieron en los métodos reales para mostrar información en la pantalla y ahora es legítimo usarlas para construir la interfaz de usuario sin importar el objetivo. Esta idea evolucionó. escribo esto con aplicación de nociónque está envuelto Electrón, que comparten los mismos conceptos elementales. (Dicho esto, ¡la aplicación Notion tiene 668 MB!)
La esencia de Tauri escrita en él. ÓxidoEs un idioma nuevo para mí, pero no tengo la intención de involucrarme tanto. En un sentido simple, el núcleo de Rust controla las ventanas nativas y el paso de mensajes, lo que permite la emulación del navegador de componentes similares a la web. Si bien este tipo de entrega modular tiende a crear planos arquitectónicos complejos, constituye un enfoque más estructurado a nivel local. Las preocupaciones de la interfaz de usuario están bien separadas de las preocupaciones del sistema operativo, etc. Si veo un candelabro en el jardín, sé que estoy jugando Kléido – Porque no tiene nada que ver con estar ahí aparte de eso.
💡 Tauri es un marco para crear aplicaciones de escritorio con cualquier marco frontal y kernel Rust.
Probablemente preferiría escribir menos JavaScript, pero soy práctico. Después de todo, la mayor parte de la interfaz de usuario en el mundo está escrita para la web. Entonces, para mi prueba de manejo, utilicé la guía de inicio con el Ejemplo de destino. Tauri se presenta como una tecnología similar a un pegamento que se enfoca en la cadena de herramientas, lo que significa que puede parecer mucho más difícil para los nuevos desarrolladores porque tocas muchas piezas al pasar. Siempre es difícil saber qué te enfermó cuando comes del buffet. Por el contrario, es muy adecuado para beneficiarse del conocimiento de un desarrollador front-end experimentado.
Seguiré los pasos de la guía con mi Mac. Sé que uno de los requisitos previos es Rust, pero también creo que la configuración de mi nodo es bastante antigua.
Desde mi shell, compruebo que tengo las bibliotecas Xcode muy importantes:
Ahora ya tengo un administrador de versiones de nodos (nevm) instalado, pero pensé en instalar un nodo más nuevo pero estable:
y obtener una versión compatible de npm arrojado en él.
Luego voy a Rust en sí:
> rizo –proto ‘= https’ –tlsv1.2 [https://sh.rustup.rs](https://sh.rustup.rs/) -sSf | tu
|
> rodar –prototipo ‘=https’ –tlsv1.2 [https://sh.rustup.rs](https://sh.rustup.rs/) -sSf | tu |
Entonces, después de recargar la portada y ver la palabra «bienes», ahora tengo una Mac aún más oxidada. Si tú lo piensas Transporte él atracó sistema de compilación y administrador de paquetes, adivinado correctamente.
Después de un error extraño que se solucionó al alterar la configuración de mi registro, pude usar npm como lo sugiere la guía. Elegí una bonita estructura de vainilla de las preguntas que me hicieron y la usé para preparar la composición:
Ahora el directorio de trabajo tiene las cosas normales de desarrollo de nodos, incluido algo de HTML simple, algo de CSS, una sopa de javascript para manejar el contador, «paquete.json», una carpeta de módulos de nodos e imágenes de logotipos que puede ver. En un subdirectorio titulado ‘src-tauri’ vemos más del mundo rust y el archivo ‘tauri.conf.json’. Este archivo contiene el nombre que eligió para la ventana del título de la aplicación, así como el nombre de la aplicación tal como aparece como archivo.
Así que vamos a pasar por el proceso de desarrollo:
Y obtuve la muy buena aplicación predeterminada a continuación. Tiene un poco de lógica en el botón de conteo (aumenta cuando se presiona) y abre la página web apropiada en un navegador externo si hace clic en cualquiera de los íconos. De lo contrario, es solo una bonita ventana original.
También podríamos crear una versión, que haría una aplicación completamente instalable:
El archivo .dmg resultante creado me permitió instalarlo arrastrándolo a la carpeta Aplicaciones de la manera normal en Mac, como lo confirma mi búsqueda en Launchpad:
Este era un archivo de 9 MB dentro de la carpeta Aplicaciones. suficientemente pequeño. Así que creé una aplicación muy simple, pero el conjunto de herramientas era comprensible y bastante rápido en mi máquina antigua.
Antes de irme, veamos si podemos usar Tauri para hacer la aplicación un poco más pequeña. Noté que la ‘lista de permitidos’ en ‘tauri.conf.json’ dice qué módulos construir. Ahora, las únicas partes especiales que necesita esta aplicación es la capacidad de abrir una página HTML en un navegador externo, así que usando la documentación, probé este truco rápido:
… «tauri»: {«lista permitida»: {«todos»: falso, «fs»: {«todos»: verdadero}, «shell»: {«abrir»: verdadero}, «http»: {«solicitud «: CIERTO } } }, …
|
… «Tori»: { Lista de permitidos: { «Todos»: FalsoY el «fs»: { «Todos»: CIERTO } , «coincidencia»: { «Abierto»: CIERTO } , «http»: { «Solicitud»: CIERTO } } } , … |
El tamaño resultante se redujo a un tamaño de 8 MB, que aún funcionaba.
9 MB a 8 MB es definitivamente una dieta efectiva y, lo que es más importante, subraya lo relativamente fácil que es controlar el tamaño.
Ahora, profundizar más puede implicar una mayor familiaridad con Rust, pero este lenguaje está de moda en este momento, por lo que puede ser una empresa potencialmente gratificante. Como mencioné, Tauri es una metodología con algunas herramientas, en lugar de un enfoque de plataforma completa. Parece ser una opción sólida para los equipos de ingeniería que buscan convertir diseños web en pequeñas aplicaciones.

