cover

Novedades de Remix 3


Escuchar este post

Selecciona una voz y genera audio para escuchar este post

Remix, el marco web de pila completa, ha lanzado su versión 3 con características emocionantes que mejoran la experiencia de desarrollo y el rendimiento de las aplicaciones. A continuación, se detallan algunas de las nuevas funcionalidades y mejoras más destacadas:

1. Enrutador Web Composable con Fetch API

Con la introducción de createRouter y createRoutes, ahora es posible construir un enrutador mínimo y composable basado en la API Fetch. Esto es ideal para aplicaciones renderizadas en el servidor y APIs.

import { createRouter, createRoutes } from '@remix-run/fetch-router'; let router = createRouter(); router.get('/', () => html('<h1>Home</h1>'));

2. Proxy HTTP con API Fetch

La nueva función createFetchProxy permite crear proxies HTTP utilizando la API Fetch, lo que facilita el reenvío de solicitudes a los servicios backend y la reescritura de cookies automáticamente.

import { createFetchProxy } from '@remix-run/fetch-proxy'; let proxy = createFetchProxy('https://api.backend.com'); let response = await proxy(new Request('https://myapp.com/api/users'));

3. Generación de URLs Seguras y Tipadas

La generación de URLs ahora es más segura y tipada, gracias a las nuevas utilidades en route-pattern. Esto permite construir parámetros de URL complejos de manera segura y sencilla.

let pattern = new RoutePattern('/blog/:slug'); let match = pattern.match('https://remix.run/blog/remixing-shopify');

4. Manejo de Archivos de Forma Lazy

Remix 3 introduce LazyFile, permitiendo operaciones de archivos de forma perezosa y eficientes. Esto optimiza el manejo de grandes archivos, ya que los datos sólo se leen cuando son necesarios.

import { LazyFile } from '@remix-run/lazy-file'; let file = openFile('./large-video.mp4');

5. Mejora en el Almacenamiento de Archivos Local

La clase LocalFileStorage permite gestionar archivos con metadatos preservados, así como realizar operaciones de paginación y filtrado en listas de archivos.

import { LocalFileStorage } from '@remix-run/file-storage/local'; let storage = new LocalFileStorage('./uploads');

6. Manejo de Parámetros de Búsqueda

Se pueden definir patrones de URL que incluyen parámetros de búsqueda específicos, asegurando un enrutamiento preciso basado en criterios de búsqueda.

let pattern = new RoutePattern('/search?q=&category='); pattern.match('/search?q=routing&category=web'); // matches

7. Compatibilidad con Segmentos de URL Opcionales

Ahora es posible definir patrones de URL que incluyen segmentos y parámetros opcionales, lo que permite una mayor flexibilidad en el enrutamiento.

let pattern = new RoutePattern('/api(/v:major(.:minor))/users/:id(.:format)');

Conclusión

La versión 3 de Remix ofrece mejoras significativas que facilitan la creación de aplicaciones web rápidas y robustas. Desde un enrutador composable hasta mejoras en el manejo de archivos y URLs, Remix continúa evolucionando para satisfacer las necesidades de los desarrolladores. ¡Explora estas nuevas características y optimiza tus aplicaciones hoy mismo!

meta cover

Construye tu propio useOutsideClick

Checa este otro Post

meta cover

¿Qué son las Future Flags?

Checa este otro Post

¡Nuevo curso!

Animaciones web con React + Motion 🧙🏻