Repolode
DioxusLabs

DioxusLabs/dioxus

Framework Rust para criar apps web, desktop e mobile a partir de uma única base de código, com componentes no estilo React e signals.

Alternativa open source a:React NativeElectron

Estrelas
39,451
Forks
1,938
Issues abertas
850
Último commit
há 4 dias

O que é?

Dioxus é um framework Rust para criar interfaces que rodam na web, no desktop, no iOS, no Android e no servidor. Os componentes são escritos com uma macro RSX que lembra HTML, e a estilização usa HTML e CSS comuns. O estado é gerenciado com signals, e uma CLI integrada (dx) oferece um servidor de desenvolvimento com hot reload e empacotamento para deploy.

Para apps full-stack, o Dioxus se integra ao framework web axum e oferece server functions, renderização no servidor, hydration, WebSockets, SSE, streaming, upload e download de arquivos e middleware. Entre os alvos de renderização estão o DOM via WebAssembly, system webviews, renderização no servidor, liveview e um renderizador experimental baseado em WGPU. É possível chamar APIs nativas por meio de JNI no Android e Objective-C nas plataformas Apple.

O projeto também inclui componentes primitivos oficiais inspirados em shadcn/ui e Radix Primitives, e a CLI dx pode gerar arquivos .ipa e .apk para dispositivos mobile.

Recursos principais

  • 01Escreva uma única base de código Rust para web, desktop, iOS e Android.
  • 02Hot reload para marcação e estilos, além de hot-patching experimental de código Rust.
  • 03Gerenciamento de estado com signals e um modelo de componentes no estilo React.
  • 04Suporte full-stack com integração ao axum, server functions e SSR com hydration.
  • 05CLI dx integrada para servidores de desenvolvimento, empacotamento e criação de pacotes mobile.

Casos de uso

  • Criar um app web em Rust que também precise de uma versão para desktop, usando o mesmo código.
  • Criar apps mobile em Rust com aparência nativa que chamem APIs da plataforma.
  • Desenvolver uma aplicação Rust full-stack com backend baseado em axum.
  • Prototipar componentes de UI com HTML e CSS, mantendo a lógica em Rust.

Início rápido

  1. 1

    Instale o Dioxus CLI do git com cargo

    cargo install --git https://github.com/DioxusLabs/dioxus dioxus-cli --locked
  2. 2

    Execute um exemplo a partir da raiz do repositório

    cargo run --example <example>
  3. 3

    Sirva um exemplo com hot-reloading na plataforma web

    dx serve --example <example> --platform web -- --no-default-features

Antes de usar

  • Os exemplos da branch main são voltados para a versão do git, não para a versão estável mais recente; use a branch 0.6 para exemplos estáveis.
  • Alguns recursos de destaque, como hot-patching com dx serve --hotpatch e o renderer WGPU, estão marcados como experimentais.

Tópicos

Perguntas frequentes

O que é dioxus?
Framework Rust para criar apps web, desktop e mobile a partir de uma única base de código, com componentes no estilo React e signals. Dioxus é um framework Rust para criar interfaces que rodam na web, no desktop, no iOS, no Android e no servidor. Os componentes são escritos com uma macro RSX que lembra HTML, e a estilização usa HTML e CSS comuns. O estado é gerenciado com signals, e uma CLI integrada (dx) oferece um servidor de desenvolvimento com hot reload e empacotamento para deploy.
dioxus é gratuito? Qual é a licença?
dioxus é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
dioxus ainda é mantido?
Manutenção ativa. O último commit de dioxus foi em 17 de out. de 2026.
Para que posso usar dioxus?
Criar um app web em Rust que também precise de uma versão para desktop, usando o mesmo código. Criar apps mobile em Rust com aparência nativa que chamem APIs da plataforma. Desenvolver uma aplicação Rust full-stack com backend baseado em axum. Prototipar componentes de UI com HTML e CSS, mantendo a lógica em Rust.
Como instalar dioxus?
Instale o Dioxus CLI do git com cargo: cargo install --git https://github.com/DioxusLabs/dioxus dioxus-cli --locked Execute um exemplo a partir da raiz do repositório: cargo run --example <example> Sirva um exemplo com hot-reloading na plataforma web: dx serve --example <example> --platform web -- --no-default-features
Onde consigo dioxus?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/DioxusLabs/dioxus

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados