2 min de lectura

Topcoat busca simplificar Rust full-stack

Topcoat es un framework Rust en etapa temprana para aplicaciones full-stack con HTML renderizado en el servidor, actualizaciones reactivas en el cliente y enrutamiento basado en módulos.

Imagen: Hacker News

Topcoat es un nuevo framework full-stack de Rust del ecosistema tokio-rs que intenta reducir el código repetitivo sin renunciar al desarrollo centrado en Rust. El proyecto se describe como modular y con todo incluido, con un enfoque en la simplicidad y la productividad — pero también deja claro que está en una etapa temprana y es experimental, y que los usuarios deben esperar cambios que rompan compatibilidad.

En su núcleo, Topcoat renderiza marcado en el servidor, permitiendo que los componentes sean asíncronos y hablen directamente con una base de datos en lugar de obligar a los desarrolladores a crear una capa API separada. Para la interactividad del lado del cliente, el framework dice que las expresiones $(…) se escriben como Rust ordinario, verificado por tipos, evaluadas en el servidor para el renderizado inicial y luego traducidas a JavaScript para actualizaciones instantáneas en el navegador. La propuesta es sencilla: sin paquete wasm y sin paso de compilación del cliente.

Cuando las actualizaciones necesitan datos nuevos del servidor, Topcoat usa componentes #[shard]. Esos componentes se vuelven a renderizar en el servidor cada vez que cambia uno de sus argumentos $(…), y el HTML actualizado se intercambia en su lugar. El ejemplo en la documentación del proyecto muestra un campo de búsqueda que actualiza los resultados mientras el usuario escribe.

El framework también se apoya mucho en el templating similar a HTML a través de su macro view!, que mezcla la estructura HTML conocida con el control de flujo de Rust y atributos condicionales. También existe un comando CLI topcoat fmt para formatear fragmentos view! y otras macros en todo el código.

Recomendado

Windows 11 24H2 pierde soporte el 13 de octubre de 2026

Otras piezas integradas incluyen:

  • Enrutamiento basado en módulos, con descubrimiento opcional de rutas a partir del árbol de módulos de la aplicación y sin paso de compilación
  • Empaquetado de activos, que escanea el binario compilado en busca de llamadas a asset! y sirve archivos con almacenamiento en caché agresivo en el navegador
  • Soporte para Tailwind, habilitado mediante una bandera de característica
  • Utilidades para fuentes e iconos, incluidas integraciones con Fontsource e Iconify
  • Soporte para cookies, sesiones, memoización y contexto con alcance por petición
  • Integraciones con htmx para intercambios parciales de HTML dirigidos por el servidor

Para desarrolladores de Rust que buscan una pila full-stack con opinión, el principal argumento de venta de Topcoat es claro: mantener la mayor parte de la aplicación en Rust, renderizar en el servidor y añadir reactividad en el navegador solo donde haga falta — aceptando, eso sí, que el proyecto sigue siendo experimental.

Tomas Berg

Computing Editor

Tomas lives in the terminal. He covers chips, laptops, and operating systems with a focus on performance and efficiency. He reads kernel changelogs the way other people read fiction, and he's always on the hunt for the perfect mechanical keyboard switch. If it processes data, Tomas has an opinion on it.

vía Hacker News

// Sigue leyendo