Sobre este proyecto
it-programming / mobile-development
Abierto
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.
Categoría Programación y Tecnología
Subcategoría Programación de Apps. Android, iOS y otros
¿Cuál es el alcance del proyecto? Crear una aplicación nueva
¿Es un proyecto o una posición? Un proyecto
Actualmente tengo Tengo una idea
Disponibilidad requerida Según se necesite
Plataformas requeridas Android, iPhone
Necesito Crear una app
Tipo de app Otro
Apps similares Uber
Necesita backend Sí
Procesador de pago No
Plazo de Entrega: No definido
Habilidades necesarias