Files
hackathon-biocode-17bf223ba…/README.md
2026-05-23 09:13:24 -06:00

4.5 KiB

🚛 EcoTrack Celaya

Sistema de Notificación Inteligente y Privada de Recolección de Residuos

Equipo BioCode · Instituto Tecnológico de Celaya / TecNM
Hackathon Municipal de Innovación Tecnológica 2026


¿Qué es EcoTrack Celaya?

App web progresiva (PWA) que avisa al ciudadano el tiempo estimado de llegada del camión recolector a su colonia — sin mostrar mapas ni exponer rutas de otros vecinos.

Principio central: Privacidad por Diseño — el usuario recibe solo la información que necesita.


🚀 Instalación rápida (primera vez)

Requisitos previos

Pasos

1. Clona el repositorio

git clone https://git.onlinces.net/onlinces/hackathon-biocode-17bf223ba206451da7389a2ef30662b4.git ecotrack-celaya
cd ecotrack-celaya

2. Ejecuta el instalador automático
Haz doble clic en install.bat
(instala todas las dependencias del frontend y backend automáticamente)

3. Arranca el sistema
Haz doble clic en start.bat
(abre el simulador y el frontend en dos terminales)

4. Abre la app en el navegador

http://localhost:5174

📱 Cómo usar la app

  1. Regístrate con cualquier correo y contraseña
  2. Selecciona tu colonia al registrarte (Zona Centro, Las Arboledas, Trojes, etc.)
  3. Ve el Dashboard — el ETA se actualiza cada 10 segundos en modo demo
  4. Observa el simulador — en la terminal verás cómo el camión avanza nodo a nodo
  5. Envía un reporte desde la pestaña Reportes — se guarda en Firebase en tiempo real

🏗️ Arquitectura

Servidor Municipal          Backend Simulador       Frontend PWA
td.celaya.biz:8018    →    FastAPI + Python    →    React + Vite
  rutas.json               Avanza positionId         Dashboard ETA
  colonias.json            cada 10 seg (demo)        Guía offline
  notificaciones.json      puerto 8000               Reportes
                                                      puerto 5174
                                    ↓
                              Firebase
                          Auth + Firestore
                        Login + Reportes BD

📁 Estructura del proyecto

proyecto/
├── ecotrack/              ← Frontend React + Vite
│   ├── src/
│   │   ├── api/           ← etaService.js (llama al simulador)
│   │   ├── context/       ← ETAContext.jsx (estado global)
│   │   ├── screens/       ← Dashboard, SeparationGuide, Reports, Login
│   │   ├── components/    ← ETACard, WarningCard, RouteProgress
│   │   ├── data/          ← rutas.json, colonias-rutas.json, notificaciones.json
│   │   └── firebase.js    ← configuración Firebase
│   └── package.json
├── simulador-backend/     ← Backend FastAPI
│   ├── main.py            ← API + simulador automático
│   ├── rutas.json         ← datos de las 15 rutas de Celaya
│   └── requirements.txt
├── start.bat              ← Arranca todo con doble clic
├── install.bat            ← Instala todo con doble clic
└── README.md

🔧 Comandos manuales (alternativa a los .bat)

Terminal 1 — Simulador:

cd simulador-backend
venv\Scripts\activate
uvicorn main:app --reload --port 8000

Terminal 2 — Frontend:

cd ecotrack
npm run dev

Funcionalidades implementadas

Funcionalidad Estado
Login y registro seguro (Firebase Auth)
Dashboard con ETA en tiempo real
Simulador automático de ruta (Cron Job)
Progreso de ruta sin mapa ni coordenadas
Notificaciones push del navegador
Guía de separación offline (4 categorías)
Buzón de reportes (Firestore)
Privacidad por Diseño — sin mapa en vivo
Datos reales del municipio de Celaya
PWA compatible iOS y Android

👥 Equipo BioCode

Nombre Carrera Rol
Pérez González José Carmen Ing. Sistemas Computacionales Arquitectura, Backend, Firebase
Arce Rodríguez Martin Ing. Sistemas Computacionales Frontend React, Integración
Aguilar Orosco Briana Itzel Ing. Biomédica UX, Guía residuos, Reportes
Trejo Jiménez Yohav Shaddai Ing. Biomédica Documentación, Testing, Mockups

Asesor: M.C. López González Luis Alberto
Institución: Instituto Tecnológico de Celaya / TecNM
Fecha: 23 de mayo de 2026