EnroqueApp

EnroqueApp

Aplicación Android desarrollada en Kotlin para gestionar torneos de ajedrez.

Permite a jugadores, aficionados y administradores participar en distintas etapas de un torneo mediante un sistema de roles y permisos, incluyendo inscripción de participantes, generación automática de fixtures, seguimiento de partidas en tiempo real y gestión de sedes mediante mapas interactivos.

La aplicación utiliza Firebase Authentication para la autenticación de usuarios y Cloud Firestore para la sincronización y persistencia de datos en tiempo real.

Galería (8)

Funcionalidades principales

Usuarios y roles

  • Autenticación y registro mediante Firebase Authentication.
  • Sistema de roles para aficionados, jugadores y administradores.
  • Permisos y funcionalidades diferenciadas según el tipo de usuario.
  • Sistema de favoritos y seguimiento de torneos.

Gestión de torneos

  • Creación y administración de torneos.
  • Control de inscripciones y validación de participantes.
  • Gestión del ciclo de vida de torneos.
  • Generación automática de fixtures y emparejamientos.

Seguimiento de partidas

  • Registro y administración de partidas.
  • Carga de movimientos mediante un teclado especializado para notación de ajedrez.
  • Visualización de resultados y movimientos en tiempo real.
  • Historial completo de partidas por torneo.
  • Actualización automática de posiciones y clasificaciones.

Persistencia y sincronización

  • Almacenamiento de usuarios, torneos, partidas e inscripciones en Cloud Firestore.
  • Sincronización de datos en tiempo real entre dispositivos.
  • Persistencia del historial de torneos y partidas.
  • Actualización automática de información sin necesidad de recargar la aplicación.

Mapa interactivo

  • Visualización de sedes de torneos mediante Google Maps.
  • Marcadores personalizados para torneos y comercios asociados.
  • Consulta de ubicaciones y beneficios disponibles.

Tecnologías e infraestructura

  • Android.
  • Kotlin.
  • Arquitectura MVVM y Clean Architecture.
  • Firebase Authentication para autenticación de usuarios.
  • Cloud Firestore para persistencia y sincronización de datos en tiempo real.
  • Jetpack Compose y XML Layouts.
  • Jetpack Navigation Component y ViewBinding.
  • Kotlin Coroutines.
  • Google Maps Platform.