Dificultad
intermediate
Duración promedio
2 hrs
Tecnologías
Typescript
react native
React Navigation
zustand
Dificultad
intermediate
Duración promedio
2 hrs
Tecnologías
Typescript
react native
React Navigation
zustand
Para este proyecto ampliaremos el catálogo de películas usando Zustand para manejar estados globales sencillos: favoritos, filtro por categoría y búsqueda por título.
movies.ts con datos locales.El store debe exponer, como mínimo:
favorites: number[]selectedCategory: string | nullsearch: stringtoggleFavorite(id), clearFavorites(), setCategory(cat), setSearch(q)Usa selectores (y
shallowcuando aplique) para evitar re-renders innecesarios.
Crea la funcionalidad de Favoritos
FavoritesScreen: listar solo películas cuyos IDs estén en favorites.MovieCard: mostrar badge/ícono cuando id sea favorito (lectura del store con selector).Filtro por categoría
CategoryMoviesScreen: mostrar Category: <cat> y filtrar movies por la categoría del store.Búsqueda por título
title (case-insensitive).useMoviesStore((s) => s.favorites).selectedCategory y luego search.React.memo) y usa claves estables.Dificultad
intermediate
Duración promedio
2 hrs
Tecnologías
Typescript
react native
React Navigation
zustand
Dificultad
intermediate
Duración promedio
2 hrs
Tecnologías
Typescript
react native
React Navigation
zustand
Dificultad
intermediate
Duración promedio
2 hrs
Tecnologías
Typescript
react native
React Navigation
zustand
Dificultad
intermediate
Duración promedio
2 hrs
Tecnologías
Typescript
react native
React Navigation
zustand
Dificultad
intermediate
Duración promedio
2 hrs
Tecnologías
Typescript
react native
React Navigation
zustand
Dificultad
intermediate
Duración promedio
2 hrs
Tecnologías
Typescript
react native
React Navigation
zustand