Skip to content

mgarciavargas/EventosApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📱 EventosApp - Proyecto Android con Hilt

✅ Proyecto completo listo para usar

🎯 Tecnologías incluidas:

  • ✅ Kotlin 1.9.23
  • ✅ Hilt 2.51 (Inyección de Dependencias)
  • ✅ Jetpack Compose (UI moderna)
  • ✅ MVVM Architecture
  • ✅ StateFlow para manejo de estado
  • ✅ Material 3 Design
  • ✅ Navigation Compose (preparado)

🚀 Cómo usar este proyecto

Opción 1: Abrir directamente en Android Studio (Recomendado)

  1. Abre Android Studio
  2. File → Open
  3. Selecciona la carpeta EventosApp
  4. Espera el Sync automático (puede tardar 2-5 minutos la primera vez)
  5. Run en tu emulador o dispositivo

Opción 2: Desde Terminal

cd EventosApp
chmod +x gradlew
./gradlew clean
./gradlew build

Luego abre en Android Studio.


📁 Estructura del Proyecto

EventosApp/
├── app/
│   ├── src/
│   │   └── main/
│   │       ├── java/com/miempresa/eventosapp/
│   │       │   ├── EventosApplication.kt      # @HiltAndroidApp
│   │       │   ├── MainActivity.kt            # @AndroidEntryPoint
│   │       │   ├── domain/
│   │       │   │   └── model/
│   │       │   │       └── Event.kt          # Modelo de datos
│   │       │   ├── presentation/
│   │       │   │   └── events/
│   │       │   │       ├── EventsViewModel.kt # @HiltViewModel
│   │       │   │       └── EventsScreen.kt    # UI Compose
│   │       │   └── ui/
│   │       │       └── theme/
│   │       │           └── Theme.kt          # Material 3 Theme
│   │       ├── AndroidManifest.xml
│   │       └── res/
│   │           └── values/
│   │               ├── strings.xml
│   │               └── themes.xml
│   └── build.gradle.kts
├── gradle/
│   └── wrapper/
│       └── gradle-wrapper.properties
├── build.gradle.kts
├── settings.gradle.kts
└── gradle.properties

🎨 Lo que verás al ejecutar

La app mostrará una lista de 3 eventos de ejemplo:

  • 🎸 Concierto de Rock
  • 💻 Conferencia Tech
  • 🍕 Festival Gastronómico

Cada evento muestra:

  • Título y categoría
  • Fecha y ubicación
  • Número de asistentes
  • Precio

🔧 Arquitectura MVVM

View (Compose) ↔ ViewModel (StateFlow) ↔ Model (Event)
       ↓
   observa con
   collectAsState()

EventsScreen.kt → Observa el estado del ViewModel
EventsViewModel.kt → Expone StateFlow con la lista de eventos
Event.kt → Modelo de datos puro


📦 Dependencias principales

  • Hilt: Inyección de dependencias
  • Jetpack Compose: UI declarativa
  • Material 3: Diseño moderno
  • Navigation Compose: Navegación entre pantallas
  • StateFlow: Manejo reactivo de estado

🚧 Próximos pasos para expandir

Una vez que funcione, puedes agregar:

  1. Room Database (persistencia local)
  2. Retrofit (consumo de API)
  3. Repository Pattern (capa de datos)
  4. UseCases (lógica de negocio)
  5. Pantalla de detalle (al hacer click en evento)
  6. Autenticación (login/registro)
  7. Suscripción a eventos

❓ Troubleshooting

Si falla el Sync:

./gradlew clean
rm -rf .gradle
rm -rf build
rm -rf app/build
./gradlew build

Si falla por Java:

Verifica que tengas JDK 8 o superior instalado:

java -version

Si falla Hilt:

Verifica que EventosApplication esté declarado en AndroidManifest.xml


👨‍💻 Creado por

Marco Antonio García Vargas
Fecha: Noviembre 2025
Con ayuda de Claude (Anthropic)


¡Listo para desarrollar! 🚀

About

Este proyecto es basado en Android

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages