About this project
it-programming / mobile-development
Open
Necesito una aplicación móvil desarrollada en Flutter que permita gestionar competencias de bicicletas. La aplicación debe incluir las siguientes características principales:
Roles de usuario:
1. Administrador:
Crear y gestionar competencias (carreras).
Iniciar y detener el temporizador para todas las carreras en tiempo real.
Monitorear en tiempo real el progreso de los participantes (ubicación en Google Maps y tabla de posiciones).
2. Participante:
Crear una cuenta y registrar un perfil.
Suscribirse a las carreras disponibles.
Permitir el seguimiento de su ubicación en tiempo real durante la carrera.
Características de la aplicación:
1. Registro y Autenticación:
Los usuarios podrán registrarse con nombre, correo, contraseña y rol (Administrador o Participante).
La autenticación puede ser manejada con Firebase Authentication.
La base de datos debe guardar los datos de los usuarios y asociarlos con su rol.
2. Gestión de Carreras (Administrador):
Crear carreras indicando:
Nombre de la carrera.
Fecha y hora de inicio.
Ubicación de salida y meta (coordenadas en Google Maps).
Ver una lista de las carreras creadas.
Iniciar la carrera: Activar un temporizador global que sincronice el inicio en todos los dispositivos de los participantes.
Finalizar la carrera: Parar el temporizador y mostrar los resultados finales.
3. Suscripción a Carreras (Participantes):
Los participantes pueden ver una lista de carreras disponibles.
Pueden suscribirse a las carreras previamente creadas.
4. Seguimiento en tiempo real:
Los dispositivos de los participantes deben enviar su ubicación GPS en tiempo real durante la carrera.
El administrador debe poder visualizar en un mapa (Google Maps):
Las ubicaciones actuales de todos los participantes.
Una tabla de posiciones en tiempo real basada en la distancia recorrida y el tiempo que muestre el prograso de cada uno.
Los administradores recibirán alertas en tiempo real cuando un participante esté cerca de la meta.
5. Tabla de posiciones:
La tabla debe mostrar:
Nombre y Foto del participante.
Tiempo transcurrido.
Posición actual basada en la distancia recorrida.
Debe actualizarse automáticamente en tiempo real.
6. Notificaciones:
Los administradores deben recibir una notificación al finalizar una carrera.
Los participantes deben recibir notificaciones de recordatorio antes de la carrera y al finalizar su participación.
Requerimientos Técnicos:
Tecnologías Recomendadas:
Flutter: Para el desarrollo de la aplicación móvil.
Firebase:
Firebase Authentication para registro y autenticación.
Firebase Realtime Database o Firestore para sincronización en tiempo real.
Firebase Cloud Messaging para notificaciones.
Google Maps API: Para mostrar el mapa y las ubicaciones de los participantes.
Geolocalización: Uso de librerías como geolocator o location para rastreo GPS.
Entregables esperados:
1. Aplicación móvil funcional para Android e iOS.
2. Código fuente bien documentado.
3. Configuración de Firebase y Google Maps.
4. Manual de usuario para el administrador y participantes.
5. Asistencia en el proceso de publicación de la app en Google Play Store.
Capacidad para cumplir con los tiempos de entrega.
Comunicación clara y constante.
Category IT & Programming
Subcategory Apps programming. Android, iOS and others
What is the scope of the project? Create a new app
Is this a project or a position? Project
I currently have I have an idea
Required availability As needed
Required platforms Android, iPhone
I need to Create an app
App type Other
Similar apps Uber
Back-end is required Yes
Payment gateway No
Delivery term: Not specified
Skills needed