Contenido del curso

Migra Platzi Movies de JS a React

Resumen

Migrar un proyecto de JavaScript vainilla a React es uno de los ejercicios más reveladores cuando estás aprendiendo el ecosistema. El reto consiste en tomar Platzi Movies, la aplicación construida en los cursos de consumo de APIs con JavaScript, y replicarla usando ReactJS junto a React Router para manejar la navegación entre vistas.

Qué debes construir en este reto de Platzi Movies con React

La idea es replicar la misma experiencia que ya tenías con JavaScript puro, pero apoyándote en las herramientas que React pone sobre la mesa.

La aplicación original incluye varias vistas que dependen de rutas distintas, así que tu clon necesita reproducir cada una de ellas:

  • Página de tendencias con infinite scrolling para cargar más películas a medida que haces scroll.
  • Página de búsquedas que recibe un término y muestra los resultados desde la API.
  • Filtro por categorías para navegar entre géneros de películas.
  • Vista de detalle para cada película.

¿Qué es Platzi Movies? Es un proyecto práctico que consume la API de películas y muestra tendencias, búsquedas y categorías. Se construye primero en JavaScript vainilla y luego se migra a React como ejercicio de aprendizaje.

Por qué cambiar el hash router por React Router

En la versión original del proyecto, la navegación se resolvió a mano. El código usaba un hash router propio, hecho con lo mínimo necesario para funcionar: literalmente se llamaba a location.hash para decidir qué ruta renderizar en cada momento.

Ese enfoque funciona, pero te obliga a mantener tú mismo toda la lógica de rutas. Aquí es donde React Router cambia el juego, porque te entrega componentes y hooks listos para declarar rutas, leer parámetros y navegar entre vistas sin reinventar la rueda.

¿Qué es un hash router? Es un sistema de navegación que usa el símbolo # en la URL para diferenciar rutas sin recargar la página. Lee location.hash y renderiza la vista correspondiente según ese valor.

Qué ventajas te da React Router frente al router casero

Al migrar la navegación, vas a notar varias mejoras concretas en tu flujo de trabajo:

  • Declaras las rutas como componentes, no como condicionales sobre el hash.
  • Manejas parámetros dinámicos (como el id de una película) con hooks dedicados.
  • Puedes anidar rutas y compartir layouts entre vistas.
  • La navegación se siente fluida porque React solo re-renderiza lo necesario.

Con esto, lo que antes eran decenas de líneas de lógica manual se convierte en una estructura declarativa mucho más fácil de leer y mantener.

Cómo entregar tu clon de Platzi Movies en React

La entrega del reto es simple, pero importante para que recibas feedback real sobre tu código.

Compárteme el paso a paso en los comentarios y enlaza tu repositorio con el código del clon. Si quieres ir un paso más allá, despliega la aplicación en algún servicio de hosting y suma el enlace del sitio en vivo. Así no solo tienes el proyecto en JavaScript vainilla, también lo tienes con React funcionando para cualquiera que quiera revisarlo.

¿Ya empezaste tu clon? Cuéntame qué parte te está costando más: la migración de la navegación, el infinite scrolling o el filtro por categorías.