Sobre el proyecto

Topcoat es un framework modular y completo en Rust para construir aplicaciones web full-stack. Prioriza la simplicidad y la productividad, ofreciendo un enfoque único que combina el renderizado del lado del servidor con la reactividad del lado del cliente sin necesidad de una capa API separada o un paso de compilación del cliente. Las características clave incluyen: - **Renderizado del lado del servidor con componentes asíncronos**: Los componentes pueden ser asíncronos y consultar la base de datos directamente, eliminando el código repetitivo tradicional de API. - **Reactividad del cliente sin código repetitivo**: La expresión `$(...)` es Rust con verificación de tipos que se ejecuta en el servidor para el renderizado inicial y se traduce a JavaScript para una reejecución instantánea en el navegador, sin un paquete wasm ni un paso de compilación del cliente. - **Plantillas HTML potentes**: La macro `view!` admite el flujo de control familiar de Rust, atributos condicionales y un formateador CLI (`topcoat fmt`). - **Enrutamiento basado en módulos**: Opcionalmente, infiere el árbol de rutas de la estructura de módulos de la aplicación sin un paso de compilación. - **Componentes prefabricados**: Topcoat UI es una biblioteca de componentes basada en Tailwind, inspirada en shadcn/ui, con componentes copiados en el proyecto para una fácil personalización. - **Empaquetado de activos**: El empaquetador escanea el binario en busca de llamadas `asset!`, copia o descarga archivos y los sirve con almacenamiento en caché agresivo. Incluye utilidades para fuentes web e iconos. - **Soporte integrado de Tailwind**: Característica opcional para integrar Tailwind CSS sin Node. - **Integraciones de terceros**: htmx, Alpine AJAX, Datastar y más. Topcoat está en una etapa temprana y experimental, con cambios importantes esperados. La hoja de ruta incluye características como exportación estática, navegación del lado del cliente, autenticación y más. Para más información, consulte la [Guía de inicio](https://github.com/tokio-rs/topcoat/blob/main/crates/topcoat/docs/getting_started.md) y la [documentación](https://docs.rs/topcoat/latest/topcoat).