← Volver al listado de tecnologías
React Native Zero to Hero: Aplicación TODO Completa
React Native Zero to Hero: Aplicación TODO Completa
Aprende a desarrollar una aplicación TODO profesional desde cero usando las mejores prácticas y tecnologías modernas.
🎯 Stack Tecnológico
- React Native - Framework principal
- TypeScript - Tipado estático
- Zustand - Gestión de estado
- TanStack Query - Manejo de datos del servidor
- Clerk - Autenticación completa
- React Navigation - Navegación
- Expo - Herramientas de desarrollo y deploy
📱 Aplicación Final
Al completar este curso habrás creado una aplicación TODO completa con:
- ✅ Autenticación completa con Clerk (email, OAuth, biométrica)
- ✅ CRUD de tareas sincronizado por usuario
- ✅ Categorías y etiquetas personalizadas
- ✅ Sincronización offline/online
- ✅ Notificaciones push
- ✅ Deploy en Google Play Store
- ✅ Diseño responsive y accesible
🚧 Estado del Curso
Progreso actual: 13/28 capítulos completos (46.4%)
- ✅ Completos: Capítulos 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13
- 🚧 En desarrollo: Capítulos 14-28
- 📝 Planificados: Todos los capítulos tienen estructura y contenido planificado
📚 Índice del Curso
🚀 Parte 1: Fundamentos y Configuración (Semana 1)
Capítulo 1: Introducción y Configuración del Entorno
- ✅ Completo - Instalación de Node.js, Expo CLI y EAS CLI
- Configuración de Android Studio y herramientas
- Creación del proyecto con Expo y TypeScript
- Configuración de EAS Build desde el inicio
- Estructura de carpetas y convenciones
Capítulo 2: TypeScript en React Native
- ✅ Completo - Configuración avanzada de TypeScript
- Tipos para componentes y props
- Interfaces para datos de la aplicación
- Tipado de navegación y rutas
Capítulo 3: Primeros Componentes y Estilos
- ✅ Completo - Componentes básicos (View, Text, TouchableOpacity)
- Sistema de estilos con StyleSheet
- Flexbox y diseño responsive
- Componentes reutilizables
🏗️ Parte 2: Arquitectura y Estado (Semana 2)
Capítulo 4: Configuración de Zustand con Testing
- ✅ Completo - Instalación y configuración de Zustand
- Testing unitario desde el inicio con Jest
- Creación de stores tipados con testing
- DevTools y debugging
Capítulo 5: Store de Tareas con Testing Unitario
- ✅ Completo - Store expandido con categorías y filtros
- Mock Service Worker (MSW) para testing de APIs
- Testing de persistencia con AsyncStorage
- Patterns avanzados de Zustand con slices
Capítulo 6: Navegación con React Navigation y Testing
- ✅ Completo - React Navigation con TypeScript completo
- Stack, Tab y Modal navigation
- Deep linking y testing de navegación
- Hooks personalizados tipados
🧪 Parte 2.5: Testing Temprano (Semana 2.5)
Capítulo 6.5: Testing Avanzado: MSW, Testing Library y Mejores Prácticas
- 🚧 En desarrollo - Configuración completa de Mock Service Worker
- Testing Library avanzado para React Native
- Patterns de testing para componentes complejos
- Mocking y fixtures profesionales
🔐 Parte 3: Autenticación con Clerk (Semana 3)
Capítulo 7: Configuración de Clerk
- ✅ Completo - Creación de cuenta y configuración de Clerk
- Instalación de @clerk/clerk-expo y dependencias OAuth
- Configuración de ClerkProvider y variables de entorno
- Integración con Zustand y testing con mocks
Capítulo 8: Implementación de Autenticación
- ✅ Completo - Componentes de SignIn y SignUp completos
- Flujos OAuth con Google y Apple implementados
- Verificación de email y manejo de errores
- Protección de rutas con AuthGuard y testing
Capítulo 9: Gestión de Usuario y Sesiones
- ✅ Completo - Pantallas de perfil y edición completas
- Gestión de métodos de autenticación
- Componentes reutilizables de perfil
- Hooks personalizados y testing completo
📡 Parte 4: Datos del Servidor (Semana 4)
Capítulo 10: Configuración de TanStack Query
- ✅ Completo - QueryClient optimizado para React Native
- Integración con autenticación de Clerk
- Detección de estado de red y cache persistente
- DevTools, hooks personalizados y testing completo
Capítulo 11: API Client con Autenticación
- ✅ Completo - Configuración de cliente HTTP (Axios)
- Interceptors con tokens de Clerk
- Tipos TypeScript para API responses
- Manejo de errores y refresh de tokens
Capítulo 12: Queries y Mutations Autenticadas
- ✅ Completo - Queries para obtener tareas del usuario
- Mutations para CRUD con autenticación
- Optimistic updates
- Invalidación de cache por usuario
📋 Parte 5: Funcionalidades Core (Semana 5-6)
Capítulo 13: CRUD de Tareas por Usuario
- ✅ Completo - Lista de tareas filtrada por usuario
- Formularios para crear/editar tareas
- Swipe actions para eliminar
- Pull to refresh con datos del usuario
Capítulo 14: Categorías y Filtros Personalizados
- Sistema de categorías por usuario
- Filtros por estado y categoría
- Búsqueda de tareas personal
- Ordenamiento personalizado
Capítulo 15: Fechas y Recordatorios
- Date pickers nativos
- Configuración de recordatorios
- Validación de fechas
- Tareas vencidas y próximas
🎨 Parte 6: UI/UX Avanzado (Semana 7)
Capítulo 16: Perfil de Usuario con Clerk
- Componente de perfil con datos de Clerk
- Edición de información personal
- Cambio de contraseña y configuración
- Gestión de métodos de autenticación
Capítulo 17: Diseño y Temas
- Sistema de temas (claro/oscuro)
- Componentes de UI personalizados
- Animaciones con Reanimated
- Gestos y interacciones
Capítulo 18: Accesibilidad
- Etiquetas de accesibilidad
- Navegación por teclado
- Soporte para lectores de pantalla
- Testing de accesibilidad
📱 Parte 7: Funcionalidades Nativas (Semana 8)
Capítulo 19: Notificaciones Push con Usuario
- Configuración de Expo Notifications
- Notificaciones locales personalizadas
- Notificaciones remotas por usuario
- Programación de recordatorios
Capítulo 20: Sincronización Offline
- Detección de conectividad
- Queue de operaciones offline
- Sincronización automática por usuario
- Resolución de conflictos
🧪 Parte 8: Testing y Calidad (Semana 9)
Capítulo 21: Testing con Autenticación
- Configuración de Jest con Clerk mocks
- Testing de stores de Zustand
- Testing de queries autenticadas
- Mocks y fixtures para usuarios
Capítulo 22: Testing de Componentes
- React Native Testing Library
- Testing de navegación autenticada
- Testing de formularios con Clerk
- Snapshots y visual regression
🚀 Parte 9: Deploy en Android (Semana 10)
Capítulo 23: Preparación para Producción
- Configuración de app.json para producción
- Variables de entorno para diferentes builds
- Optimización de bundle size
- Configuración de Proguard y obfuscación
Capítulo 24: EAS Build para Android
- Configuración de eas.json para Android
- Creación de keystore y certificados
- Build de desarrollo y producción
- Testing en dispositivos reales
Capítulo 25: Deploy en Google Play Store
- Creación de cuenta de Google Play Console
- Configuración de la aplicación en Play Console
- Upload de APK/AAB y metadata
- Proceso de revisión y publicación
- Gestión de versiones y rollouts
🎓 Parte 10: Monitoreo y Siguientes Pasos (Semana 11)
Capítulo 26: Monitoreo y Analytics
- Integración con Sentry para errores
- Analytics con Expo Analytics
- Monitoreo de performance
- Tracking de eventos de usuario
Capítulo 27: CI/CD para Android
- GitHub Actions para EAS Build
- Testing automatizado
- Deploy automático a Play Console
- Notificaciones de build y deploy
Capítulo 28: Siguientes Pasos
- Migración a Expo Router
- Implementación de funcionalidades avanzadas
- Escalabilidad y optimización
- Roadmap de desarrollo
🛠️ Recursos del Curso
- Repositorio de código: Código fuente completo con branches por capítulo
- API Backend: Servidor Node.js con autenticación Clerk
- Figma Design: Diseños y mockups completos
- Checklist: Lista de verificación por capítulo
- Scripts de Deploy: Automatización para Google Play
📋 Prerrequisitos
- Conocimientos básicos de JavaScript
- Experiencia con React (hooks, componentes)
- Familiaridad con TypeScript (básico)
- Node.js instalado
- Cuenta de Google Play Developer (para deploy)
🎯 Objetivos de Aprendizaje
Al completar este curso serás capaz de:
- Desarrollar aplicaciones React Native profesionales
- Implementar autenticación completa con Clerk
- Manejar datos del servidor con TanStack Query
- Crear aplicaciones con TypeScript end-to-end
- Publicar aplicaciones en Google Play Store
- Configurar CI/CD para React Native
¡Comencemos este viaje para convertirte en un desarrollador React Native profesional!