MiFlota
Aplicación full-stack para centralizar la gestión diaria de pequeñas empresas de transporte y profesionales autónomos.
- Rol
- Análisis funcional, definición del producto, desarrollo full-stack, modelado de datos, pruebas y documentación.
- Tecnologías
- ReactViteTypeScriptTailwind CSSFastAPIPostgreSQLDocker

Resumen
MiFlota reúne vehículos, viajes, repostajes, mantenimientos, incidencias e indicadores operativos en una única plataforma, reduciendo la dependencia de archivos separados y controles manuales.
Problema
Las pequeñas flotas suelen trabajar con información distribuida entre hojas de cálculo, documentos, mensajes y programas no conectados. Esto dificulta conocer la situación real de cada vehículo, relacionar viajes con costes, controlar repostajes, anticipar mantenimientos y disponer de una visión global para tomar decisiones.
Objetivos
- Centralizar la información operativa de la flota.
- Relacionar vehículos, conductores, viajes, repostajes, mantenimientos e incidencias.
- Permitir diferentes permisos según el rol del usuario.
- Reducir registros duplicados y cálculos manuales.
- Mostrar indicadores comprensibles en un panel de control.
- Preparar una arquitectura que pueda desplegarse y evolucionar.
Solución
| Módulo | Funciones |
|---|---|
| Acceso y usuarios | Inicio de sesión, autenticación mediante JWT, rutas privadas y roles como administración, oficina/gestión y conductor. |
| Vehículos | Alta, consulta, edición y uso del vehículo como entidad central del sistema. |
| Viajes | Listado, alta, detalle y actualización de viajes mediante API. |
| Repostajes | Registro de fecha, litros, importe, proveedor y forma de pago; asociación automática del conductor y cálculo del precio por litro. |
| Mantenimientos | Seguimiento de operaciones de mantenimiento vinculadas a los vehículos. |
| Incidencias | Registro por vehículo y conductor con tipo, gravedad, estado y descripción. |
| Dashboard | Visualización de información e indicadores operativos. |
| Datos | Importación o carga desde Excel/script en determinados flujos. |
| Documentación API | Swagger/OpenAPI para consultar y probar los endpoints. |
Mi aportación
Análisis funcional, definición del producto, desarrollo full-stack, modelado de datos, pruebas y documentación.
Arquitectura
| Capa | Tecnologías / enfoque |
|---|---|
| Frontend | React, Vite, TypeScript, Tailwind CSS, React Router, Zustand, Axios y librería de gráficos. |
| Backend | Python, FastAPI, API REST, SQLAlchemy, autenticación JWT y validación de esquemas. |
| Datos | PostgreSQL, Supabase como servicio de base de datos, migraciones con Alembic. |
| Infraestructura | Docker y Docker Compose; repositorio GitHub; arquitectura preparada para despliegue web. |
| Calidad | Configuración mediante variables de entorno, documentación README, revisión de arranque y pruebas de flujos principales. |
Decisiones y dificultades
- Separación del frontend y backend mediante API para facilitar mantenimiento y escalabilidad.
- Diseño de permisos y rutas privadas para adaptar la aplicación a distintos tipos de usuario.
- Gestión segura de variables de entorno y secretos fuera del repositorio.
- Coherencia entre entornos locales, Docker y servicios externos de base de datos.
- Normalización de datos y relaciones para que el vehículo actúe como eje de la operativa.
- Pruebas de arranque limpio, migraciones y flujos completos antes de considerar una fase terminada.
IA aplicada
En MiFlota he utilizado Claude Code y ChatGPT como apoyo en el análisis del repositorio, definición de mejoras, revisión de arquitectura, detección de errores, refactorización, documentación y preparación de pruebas. Mi responsabilidad ha sido definir el problema, establecer los requisitos, tomar las decisiones funcionales, validar el comportamiento y comprobar que la solución responde a la operativa real.
Resultado
El proyecto demuestra la capacidad de transformar experiencia en transporte, facturación y costes en una solución digital completa. Actualmente dispone de una base funcional y modular sobre la que pueden incorporarse nuevos informes, alertas, automatizaciones e integraciones.
Evidencias
Capturas reales de la aplicación.










Pendiente antes de publicar
- URL pública o vídeo de demostración
- URL del repositorio que pueda mostrarse
- Fecha/año final que aparecerá en la ficha
- Métricas reales: registros de prueba, módulos operativos, ahorro estimado validado o cobertura de pruebas
- Captura de la documentación Swagger/OpenAPI
- Captura de la vista móvil