Skip to content

LeSoviet/hot-and-cold-kotlin

Repository files navigation

Hot and Cold - Juego de Adivinanza para Android

Un juego singleplayer de adivinanza de palabras desarrollado en Kotlin con Jetpack Compose para Android.

🎮 Descripción

Hot and Cold es un juego donde el jugador debe adivinar una palabra secreta. El juego proporciona feedback visual mediante una barra de temperatura que indica qué tan cerca está la palabra ingresada de la palabra objetivo.

✨ Características

  • 🎨 UI Moderna con Jetpack Compose y Material Design 3
  • 🌡️ Barra de Temperatura animada (Congelado → Frío → Tibio → Caliente → Muy Caliente)
  • 🧠 Algoritmo de Similitud usando Distancia de Levenshtein
  • 💡 Sistema de Pistas progresivas
  • 📊 Historial de Intentos con porcentaje de similitud
  • 🏆 Pantalla de Victoria con estadísticas
  • 🎯 Arquitectura MVVM con StateFlow
  • 🔄 Animaciones Fluidas con Compose Animation

🛠️ Tecnologías

  • Kotlin 2.1.0
  • Jetpack Compose (BOM 2025.08.00)
  • Material Design 3
  • Android Gradle Plugin 8.7.3
  • ViewModel & Lifecycle
  • Kotlin Coroutines & Flow

📱 Requisitos

  • Android Studio Ladybug o superior
  • Android SDK 24+ (Android 7.0)
  • Gradle 8.0+
  • JDK 17

🚀 Instalación

  1. Clona el repositorio:
git clone https://github.com/tuusuario/hot-and-cold-kotlin.git
cd hot-and-cold-kotlin
  1. Abre el proyecto en Android Studio

  2. Sincroniza las dependencias de Gradle

  3. Ejecuta la aplicación en un emulador o dispositivo físico

🎯 Cómo Jugar

  1. La aplicación selecciona una palabra aleatoria
  2. Escribe tu intento en el campo de texto
  3. Presiona el botón de envío
  4. Observa la barra de temperatura:
    • ❄️ Congelado: 0-20% similar
    • 🧊 Frío: 21-40% similar
    • 🌡️ Tibio: 41-60% similar
    • 🔥 Caliente: 61-80% similar
    • 🌋 Muy Caliente: 81-100% similar
  5. Usa el botón de pista 💡 si necesitas ayuda
  6. ¡Encuentra la palabra exacta para ganar!

📐 Arquitectura

app/
├── data/
│   ├── GameState.kt          # Estados del juego
│   └── WordRepository.kt     # Lógica de palabras y similitud
├── viewmodel/
│   └── GameViewModel.kt      # ViewModel con StateFlow
├── ui/
│   ├── components/
│   │   ├── TemperatureBar.kt # Barra animada
│   │   └── AttemptsList.kt   # Lista de intentos
│   ├── screens/
│   │   └── GameScreen.kt     # Pantalla principal
│   └── theme/
│       ├── Color.kt          # Paleta de colores
│       └── Theme.kt          # Tema Material 3
└── MainActivity.kt           # Activity principal

🎨 Paleta de Colores

  • Frozen: #89CFF0 - Azul claro
  • Cold: #4A90E2 - Azul
  • Cool: #9B59B6 - Púrpura
  • Warm: #E67E22 - Naranja
  • Hot: #E74C3C - Rojo

🔮 Futuras Mejoras

  • Diferentes niveles de dificultad
  • Categorías de palabras temáticas
  • Sistema de puntuación y rankings
  • Modo multijugador
  • Sonidos y efectos de vibración
  • Persistencia de estadísticas
  • Modo oscuro/claro
  • Idiomas adicionales (Español, Inglés, Portugués)

📄 Licencia

Este proyecto es de código abierto y está disponible bajo la licencia MIT.

👨‍💻 Autor

Desarrollado con ❤️ por Daniel Khadour 17 de Noviembre del 2025


¡Diviértete jugando y aprendiendo Kotlin + Jetpack Compose! 🚀

About

A single-player Android word-guessing game built with Kotlin and Jetpack Compose, featuring a temperature feedback system, Levenshtein similarity, hints, animations, and MVVM architecture.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages