WatchAll es una aplicación desarrollada con Swift y SwiftUI que permite gestionar películas y series de televisión con un diseño moderno y minimalista al más puro estilo Apple. La aplicación implementa un consumo eficiente de servicios remotos utilizando async/await para peticiones a la API, garantizando rendimiento y claridad en el flujo asíncrono.
La pestaña Movies está dividida en tres secciones independientes, conectadas a servicios remotos:
- All Movies: listado completo de películas disponibles.
- Top Rated Movies: catálogo de películas con mejor puntuación.
- Upcoming Movies: películas próximamente en cartelera.
Cada listado presenta tarjetas con información clave. Al seleccionar una película se accede a la pantalla de detalle, donde se muestra:
- Imagen de portada en alta resolución.
- Tipo de película.
- Fecha de estreno.
- Duración.
- Descripción principal.
- Sección de Trailers con apertura mediante enlace a YouTube.
- Technical Sheet: ficha técnica con metadatos relevantes.
- Idioms: idiomas disponibles para reproducción.
La pestaña Series replica la estructura de Movies, pero adaptada a contenido televisivo. Incluye:
- Selector de temporadas (Season Picker) en la pantalla de detalle.
- Listado dinámico de episodios según la temporada seleccionada.
- Acceso contextual a información específica del episodio.
- ✅ Interfaz moderna y limpia inspirada en los principios de diseño de Apple.
- ✅ Adaptada a iPhone y iPad con soporte responsive.
- ✅ Animaciones fluidas y navegación jerárquica con
NavigationStack. - ✅ Componentes reutilizables y arquitectura mantenible.
-
Movies Tab
- Navegación entre secciones: All, Top Rated, Upcoming.
- Acceso a detalle de película con información detallada y trailers.
-
Series Tab
- Listado dinámico de series según categorías.
- Picker de temporada para navegar entre episodios.
- Vista de episodios específica por temporada.
| Componente | Descripción |
|---|---|
| Lenguaje | Swift 5+ |
| Framework UI | SwiftUI (Diseño declarativo nativo) |
| Llamadas HTTP | URLSession + async/await |
| Decodificación de datos | Codable |
| Navegación | NavigationStack |
| Renderizado de imágenes | AsyncImage |
| Gestión lógica | Arquitectura modular escalable |
| Buenas prácticas | Código limpio, enfoque nativo, sin librerías externas |
- MoviesModule
- AllMovies
- TopRatedMovies
- UpcomingMovies
- SeriesModule
- Listado de series
- Season Selector
- Episodes View
- Networking
- API Client con URLSession + async/await
- Models
- Modelos
Codablebasados en respuesta JSON
- Modelos
- Reusable Components
- TrailersView
- PosterCard
- InfoSection
- TechnicalSheetView
- iOS 17+
- Xcode 15+
- Swift 5.9+
✅ En desarrollo activo
🔧 Preparado para ampliación futura (favoritos, filtros avanzados, watchlist, perfiles)
Desarrollado con enfoque 100% nativo, arquitectura clara y prestaciones modernas para garantizar escalabilidad y mantenimiento profesional.


