Skip to content

EnrutApp/enrutapp-mobile

Repository files navigation

📱 EnrutApp Mobile

React Logo

React Native Expo TypeScript Expo Router License


📋 Descripción

EnrutApp Mobile es la aplicación móvil oficial para conductores y usuarios del sistema EnrutApp. Construida con React Native y Expo, ofrece una experiencia nativa fluida para la gestión de transporte.

Funcionalidades Principales

  • 🗺️ Seguimiento en Tiempo Real: Visualización de rutas y ubicación de conductores.
  • 🚦 Gestión de Estados: Conductores pueden cambiar su estado (Disponible, En Ruta, etc.).
  • 📅 Turnos y Horarios: Visualización y gestión de turnos asignados.
  • 📦 Encomiendas: Gestión de entregas y recolecciones.
  • 🔔 Notificaciones: Alertas en tiempo real sobre cambios en rutas o servicios.

🚀 Inicio Rápido

Prerrequisitos

  • Node.js >= 18.x
  • npm o yarn
  • Expo Go en tu dispositivo móvil (Android/iOS) o Emulador

Instalación

# Clonar el repositorio
git clone https://github.com/EnrutApp/enrutapp-mobile.git
cd enrutapp-mobile

# Instalar dependencias
npm install

Configuración de Entorno

Crea un archivo .env en la raíz del proyecto basado en .env.example:

EXPO_PUBLIC_API_URL=http://localhost:3000/api
EXPO_PUBLIC_SOCKET_URL=http://localhost:3000

Ejecutar la Aplicación

# Iniciar servidor de desarrollo
npm start

# Ejecutar en Android (Emulador o Dispositivo USB)
npm run android

# Ejecutar en iOS (Simulador o Dispositivo USB - Solo Mac)
npm run ios

# Ejecutar en Web
npm run web

📱 Estructura del Proyecto

El proyecto utiliza Expo Router para la navegación basada en archivos.

app/
├── (tabs)/                 # Navegación principal por pestañas
├── _layout.tsx             # Layout raíz de la aplicación
├── index.tsx               # Pantalla inicial
├── login.tsx               # Pantalla de inicio de sesión
├── forgot.tsx              # Recuperación de contraseña
├── driver-map.tsx          # Mapa del conductor
│
components/                 # Componentes reutilizables
├── ui/                     # Componentes de UI básicos
├── tracking/               # Componentes de mapa y seguimiento
│
constants/                  # Constantes (Colores, Estilos, Config)
context/                    # Contextos de React (Auth, Socket)
hooks/                      # Custom Hooks
services/                   # Servicios de API y lógica de negocio
assets/                     # Imágenes, fuentes e íconos

🛠️ Stack Tecnológico

  • Framework: React Native con Expo SDK 50
  • Navegación: Expo Router v3
  • Lenguaje: TypeScript
  • Mapas: React Native Maps
  • Estilos: StyleSheet estándar y constantes de diseño
  • Iconos: Expo Vector Icons
  • HTTP Client: Fetch API / Axios
  • Socket: Socket.io-client

🤝 Desarrollo

Consulta CONTRIBUTING.md para detalles sobre el flujo de trabajo y estándares de código de mobile.

Comandos Útiles

# Verificación de tipos y linting
npm run lint

# Resetear caché de Expo (si hay problemas de build)
npm start -- --clear

📄 Licencia

Este proyecto está bajo la Licencia MIT. Ver el archivo LICENSE para más detalles.

👥 Equipo

  • EnrutApp Team - Desarrollo Móvil

Hecho con ❤️ por el equipo de EnrutApp

About

Aplicación móvil nativa para conductores de EnrutApp - Gestión de rutas y seguimiento en tiempo real. Construida con React Native, Expo, TypeScript y Expo Router.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Contributors