Proyecto de Fin de Ciclo 2º Daw M del CPIFP Alan Turing
Enlace a la APP
Enlace al Vídeo
Enlace al Documento
FoodFlow es una innovadora aplicación web de reparto de comida a domicilio que conecta a los usuarios con una amplia variedad de restaurantes locales. La plataforma permite a los usuarios descubrir y pedir sus platos favoritos de manera fácil y eficiente, filtrando por tipo de cocina. Además permite a los repartidores registrarse y gestionar sus entregas, y a los restaurantes gestionar sus pedidos, teniendo así un todo en uno en el reparto de las comidas.
En este documento se exponen los primeros pasos del desarrollo de FoodFlow, incluyendo el análisis funcional, objetivos del proyecto, tecnologías planteadas, estructura preliminar de base de datos y distribución de tareas.
Ver prototipo en Figma(Alta fidelidad, Baja fidelidad y UI-KIT)
En este vídeo mostramos los avances hasta la fecha del 30 de abril, donde se puede ver la estructura de nuestras tablas de usuarios, junto a sus modelos, seeders y factorías, y una primera versión de login completamente funcional para todos ellos.
🔧 Inicialización del entorno
- Clonar el repositorio:
git clone git@github.com:Hisui02/FoodFlow.git
- Pegar el archivo
.envdel proyecto en la carpeta raíz del repositorio - Iniciar el contenedor de base de datos:
docker compose -f database.yaml up -d
- Iniciar el contenedor de la aplicación en modo desarrollo:
docker compose -f develop.yaml up -d
- Conectarse al contenedor de la aplicación:
docker exec -it foodflow /bin/bash - Poblar la BDD con datos de prueba
php artisan db:seed
- Acceder a la interfaz web en: http://localhost
- Si se quiere revisar la aplicación desplegada en un entorno de producción es necesario el archivo
.env.production - Iniciar el contenedor de la aplicación en modo producción:
docker compose -f production.yaml up -d
- Facilitar la conexión entre usuarios, restaurantes y repartidores mediante una plataforma centralizada.
- Implementar autenticación y control de roles (usuario, restaurante, repartidor).
- Permitir una gestión eficiente de pedidos y entregas.
- Diseñar una interfaz moderna, rápida y responsiva con ReactJS + Inertia.js.
- Backend: Laravel 12.10.1
- Frontend: ReactJS + Inertia.js
- Base de datos: MariaDB
- ORM: Eloquent
- Estilos: TailwindCSS + ShadCN UI
- Contenedores: Docker, Docker Compose
- Herramientas: Vite, GitHub, Notion, Visual Studio Code, DBeaver, Composer
⚠️ Nota: Este diagrama se encuentra sujeto a cambios según avancemos con el desarrollo de la aplicación
Click para desplegar
| Fecha | Tarea | Responsable |
|---|---|---|
| 21/04 | Base de datos, refactorización de los docker composes y guía de desarrollo | Álvaro Leiva García |
| 23/04 | Repartidor | Álvaro Leiva García |
| 24/04 | Restaurante | Álvaro Leiva García |
| 25/04 | Usuario | Álvaro Leiva García |
| 29/04 | Login repartior + dashboard | Alejandro Barnestein Martos |
| 30/04 | Login restaurante + dashboard | Alejandro Barnestein Martos |
| 30/04 | Login usuario + dashboard | Alejandro Barnestein Martos |
| 30/04 | Actualizar README | Álvaro Leiva García |
| 30/04 | Crear vídeo checkpoint y actualizar enlace en el readme | Alejandro Barnestein Martos |
| 06/05 | Pedido, Líneas de pedido y estados de pedidos | Álvaro Leiva García |
| 06/05 | Desarrollo del diseño del wireframe de baja calidad - Logins, Registros, Dashboards de Administrador, repartidor y parte de usuario - Figma | Alejandro Barnestein Martos |
| 07/05 | Refactorizaciones leves de dockerfile y docker-compose | Álvaro Leiva García |
| 08/05 | Limpieza tras refactorizar y migraciones automáticas | Álvaro Leiva García |
| 08/05 | Desarrollo del diseño del wireframe de baja calidad - Terminado todo el wireframe - Figma | Alejandro Barnestein Martos |
| 11/05 | Diseño de la landing page | Álvaro Leiva García |
| 11/05 | Creación de la página de registro del usuario | Alejandro Barnestein Martos |
| 14/05 | Despliegue de la primera versión de la aplicación | Álvaro Leiva García |
| 14/05 | Diseño y maquetación de la página de registro del usuario | Alejandro Barnestein Martos |
| 15/05 | Correcciones del despligue y optimizaciones varias | Álvaro Leiva García |
| 19/05 | Creación de la página de registro del Restaurante y del Repartidor y maquetación del estilado, Wireframe de alta calidad de varias páginas | Alejandro Barnestein Martos |
| 21/05 | Primera versión del dashboard de un usuario | Álvaro Leiva García |
| 22/05 | Estilado y maquetación de las páginas de Login y Register de los distintos perfiles de la web, creación de la navegación entre ellos | Alejandro Barnestein Martos |
| 26/05 | Dashboard de un usuario completa | Álvaro Leiva García |
| 26/05 | Completa refacctorización de la estructura de Docker | Álvaro Leiva García |
| 27/05 | Diseño principal de la creación de un pedido, sin lógica | Álvaro Leiva García |
| 27/05 | Lógica del dashboard de un repartidor y página para ver el pedido | Alejandro Barnestein Martos |
| 28/05 | Refactorizaciones de pedidos en BDD y lógica para crear un pedido | Álvaro Leiva García |
| 28/05 | Añadido cambios a la lógica con las refactorizaciones de la BBDD y muestra cantidad de plato al ver pedido | Alejandro Barnestein Martos |
| 29/05 | Edición del register de usuario para subir una foto al storage privado de laravel | Alejandro Barnestein Martos |
| 30/05 | Página de administrador y completado CRUD de usuarios | Álvaro Leiva García |
| 03/06 | Logica del dashboard de repartidor, control del estado del pedido y actualizaciones en la bbdd. Cambios en la bbdd | Alejandro Barnestein Martos |
| 04/06 | Creado Layout de la aplicacion y aplicado a la interfaz de usuario y de repartidor | Álvaro Leiva García |
| 05/06 | Creada página de feedback de un pedido al usuario y añadido layout a la página de un restaurante | Álvaro Leiva García |
| 05/06 | Diseño y terminar lógica del dashboard y ver-pedido de Pedidos | Alejandro Barnestein Martos |
| 06/06 | Diseño y terminar lógica del dashboard de restaurante. Local Storage del login de usuario | Alejandro Barnestein Martos |
| 11/06 | Corrección filtrado pedidos en restaurante y alta fidelidad repartidor y restaurante | Álvaro Leiva García |
| 11/06 | Correción de errores de estilo y rutas | Alejandro Barnestein Martos |
| 12/06 | Realización de la documentación del estilo | Alejandro Barnestein Martos |
| 13/06 | Realización de la documentación del estilo | Alejandro Barnestein Martos |
| 13/06 | Realización de la documentación del estilo | Álvaro Leiva García |
