Sobre o projeto
Leptos é um framework web full-stack e isomórfico em Rust, projetado para criar interfaces de usuário declarativas. Ele aproveita a reatividade de granularidade fina, o que significa que os componentes são executados uma vez para criar nós DOM reais e configurar um sistema reativo que atualiza os nós individuais diretamente, sem a sobrecarga do virtual DOM.
As principais capacidades incluem:
- Renderização full-stack: renderização no lado do cliente, renderização no lado do servidor (SSR) e SSR com hidratação.
- Streaming HTTP de dados (Resources) e HTML (streaming fora de ordem ou em ordem de componentes Suspense).
- Funções de servidor isomórficas: escreva lógica apenas de servidor (solicitações de banco de dados, autenticação) ao lado dos componentes do cliente e chame-as com a mesma forma, sem precisar manter uma API REST separada.
- Um roteador construído sobre fundamentos da web (links e formulários) que funciona tanto no servidor quanto no cliente.
- Duas sintaxes de template: um macro view! semelhante ao JSX e uma sintaxe de builder.
- Sinais reativos Copy + 'static para gerenciamento de estado ergonômico.
O framework fornece templates de partida para Actix e Axum, e integra-se com a ferramenta de construção cargo-leptos. Também pode ser usado com Trunk ou uma configuração simples de wasm-bindgen. O sistema reativo pode, adicionalmente, controlar toolkits de GUI nativos usando ouvintes de eventos e efeitos.
Em comparação com Yew e Dioxus, Leptos utiliza reatividade de granularidade fina em vez de um virtual DOM. Em comparação com Sycamore, Leptos usa um formato de template semelhante ao JSX e inclui funções de servidor no framework principal, em vez de depender de um metaframework separado. O projeto afirma que suas APIs estão basicamente definidas, sem esperar grandes mudanças arquitetônicas de quebra, e observa que membros da comunidade estão usando-o para websites de produção.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.