Sobre el proyecto
Dioxus es un conjunto de marcos y herramientas para construir aplicaciones multiplataforma en Rust a partir de un único código base. Según el README, el mismo proyecto puede dirigirse a la web mediante WebAssembly y el DOM, escritorio en macOS, Linux y Windows a través de una webview o experimentalmente mediante WGPU o el renderizador Skia-based Freya, móvil para iOS y Android con salida ipa y apk y llamadas directas a Java y Objective-C, así como rendering del lado del servidor.
El modelo de programación se centra en una función que devuelve un Elemento y la macro rsx! para marcado declarativo, con el estado manejado a través de señales; el README describe esta gestión de estado como influenciada por ideas de React, Solid y Svelte. Para trabajos fullstack, el framework se integra con axum y ofrece server functions, extractors, middleware, routing, Suspense, hydration, static-site generation, incremental regeneration, WebSockets, SSE, streaming, file upload and download, y forms, con la opción de integrar un backend axum existente.
La tooling está proporcionada por dioxus-cli. El comando dx serve ejecuta una aplicación con hot-reloading integrado para markup, styles y assets, y una opción experimental dx serve --hotpatch actualiza el código Rust en tiempo real. El comando dx bundle compila y empaqueta aplicaciones con optimizaciones, y el README menciona generación avif, compresión de wasm y minification para la web. La instalación se ofrece mediante un script de instalación o cargo install desde git, y los ejemplos del repositorio también pueden ejecutarse con cargo run --example.
El proyecto también incluye un conjunto de componentes primitivos first-party modelados tras shadcn/ui y Radix Primitives, documenta elementos HTML y listeners usando MDN docs, y afirma que su sitio de documentación se usa como testbed para nuevas características y ejecuta continuous integration con Dioxus mismo.
Dioxus se describe como community-driven, con un Discord activo y GitHub issue tracker, un SDK administrado por la comunidad y una organización GitHub para crates relacionados, y un pequeño equipo core a tiempo completo apoyado por FutureWei, Satellite.im y el GitHub Accelerator program. El repositorio incluye READMEs traducidos para chino, portugués (Brasil), japonés, turco y coreano. La licensing es dual MIT o Apache-2.0.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.