Sobre o projeto
Floem é uma biblioteca de UI nativa em Rust focada em reatividade de granulação fina e código declarativo ergonômico. O README a descreve como uma biblioteca de UI declarativa de alto desempenho inspirada em Xilem, Leptos e rui. A árvore de visualização é construída uma única vez, o que o projeto afirma evita criar acidentalmente um gargalo nas funções de geração de visualização. Também fornece ferramentas como uma lista virtual para escrever código de UI eficiente.
A biblioteca é multiplataforma para Windows, macOS e Linux. A renderização pode usar wgpu através de vger ou vello, ou o renderizador Skia com suporte a GPU do AnyRender. Se uma GPU não estiver disponível, é usado um renderizador de CPU baseado em tiny-skia. O layout usa Taffy e suporta tanto Flexbox quanto Grid em qualquer nó de visualização.
O Floem inclui primitivos reativos chamados signals, inspirados em leptos_reactive, para manter as atualizações de estado da UI mínimas e eficientes. Os widgets podem ser personalizados em aparência e comportamento por meio de uma API de estilo que suporta classes e temas. Temas de terceiros podem ser instalados. Ele suporta transições e animações por keyframes, com suavização via funções de mola.
Outras características mencionadas no README incluem um inspetor de elementos para depuração de layout, temas globais claros e escuros, um sistema de design integrado para declarar temas personalizados e localização através do crate Fluent com fallbacks, troca de idioma em tempo de execução e substituições de idioma por parte. Um exemplo de início rápido mostra um contador com RwSignal, Button e Label. A documentação e exemplos de código estão vinculados, incluindo uma galeria de widgets. O projeto observa que ainda está amadurecendo e pode fazer alterações quebradiças ocasionais antes da v1. Contribuições são bem-vindas, e um ambiente de desenvolvimento em nuvem Lapdev pronto para uso é fornecido.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.