Plataforma SaaS para logística colaborativa entre empresas de mudanzas.
Mudanza Fácil es una plataforma web diseñada para conectar empresas de mudanzas y optimizar la logística de cargas entre ellas.
La aplicación permite publicar disponibilidad de espacio en unidades, buscar cargas compatibles, gestionar servicios, administrar usuarios internos y recibir solicitudes de mudanza de clientes potenciales.
El objetivo es reemplazar la coordinación informal que actualmente ocurre en grupos de WhatsApp, Facebook o llamadas, convirtiéndose en un Centro Digital de Cargas para Mudanzas en México.
Actualmente muchas empresas de mudanzas enfrentan estos problemas:
- Viajes con unidades parcialmente vacías
- Falta de visibilidad de rutas disponibles
- Comunicación fragmentada entre empresas
- Subcontratación sin historial ni reputación
- Pérdida de oportunidades de negocio
Mudanza Fácil busca resolver esto mediante una plataforma centralizada de colaboración logística.
Las empresas pueden:
- Publicar espacio disponible en unidades
- Publicar cargas que necesitan transportar
- Buscar coincidencias de rutas
- Contactar empresas directamente
- Gestionar su reputación
- Comprar leads de clientes potenciales
El proyecto está construido con arquitectura desacoplada frontend–backend, lo que permite escalar el sistema y evolucionarlo hacia microservicios o aplicaciones móviles.
Frontend (Next.js)
│
│ REST API
▼
Backend (Laravel API)
│
▼
MySQL Database
- Laravel 12
- API REST
- Arquitectura modular por dominio
- Laravel Sanctum para autenticación
- Sistema de eventos y notificaciones
- Queue + Scheduler para tareas asíncronas
- Next.js (React)
- App Router
- SCSS modular
- Componentización por dominio
- SPA preparada para evolucionar a PWA
- MySQL
- Diseño normalizado
- Índices optimizados para búsquedas de servicios
- Preparada para alto volumen de publicaciones
El backend está organizado en módulos independientes, lo que permite escalar y mantener el sistema fácilmente.
Cada módulo contiene:
- Controllers
- Models
- Requests (validaciones)
- Services (lógica de negocio)
- Repositories (acceso a datos)
- Routes independientes
| Módulo | Descripción |
|---|---|
| Empresa | Gestión de empresas |
| Usuario | Gestión de usuarios |
| Servicio | Publicación de servicios |
| Notificacion | Sistema de notificaciones |
| Resena | Sistema de reseñas |
| SolicitudMudanza | Gestión de solicitudes |
Esto permite desarrollar nuevas funcionalidades sin afectar otras partes del sistema.
- Laravel 12
- PHP
- MySQL
- Laravel Sanctum
- Queue / Scheduler
- Next.js
- React
- JavaScript
- SCSS
- Cloudinary (gestión de imágenes)
- Google Distance API
- Google Places API
- Mailtrap (entorno de desarrollo)
El sistema incluye autenticación completa mediante Laravel Sanctum.
Características:
- Registro de empresa
- Registro de usuarios internos
- Login empresa / usuario
- Middleware de protección de rutas
- Manejo de tokens
- Recuperación de contraseña
- Verificación de correo por código
Cada empresa puede administrar usuarios internos.
- Perfil de empresa
- Gestión de usuarios internos
- Activar / pausar usuarios
- Edición de perfiles
- Dashboard empresarial
Las empresas pueden publicar servicios logísticos de dos tipos:
| Tipo | Descripción |
|---|---|
| Busco | Necesito transportar una carga |
| Ofrezco | Tengo espacio disponible en una unidad |
Cada servicio incluye:
- Origen
- Destino
- Volumen disponible
- Rango de fechas
- Tipo de carga
- Notas adicionales
- Imágenes del servicio
- Activo
- Asignado
- Finalizado
Esto permite gestionar todo el ciclo de vida de una operación logística.
El sistema incluye filtros avanzados para encontrar servicios compatibles.
- Ciudad origen
- Ciudad destino
- Volumen
- Fecha
- Tipo de carga
- Búsqueda global
- Google Places Autocomplete
- Validaciones anti-spam para evitar publicaciones duplicadas
La plataforma incluye un módulo de generación de leads.
Clientes pueden:
- Solicitar una mudanza desde un formulario público
- Verificar su correo
- Recibir confirmación de su solicitud
Las empresas pueden:
- Ver solicitudes disponibles
- Comprar leads mediante tokens
- Gestionar oportunidades desde su dashboard
Esto convierte la plataforma en un Marketplace B2B + Generador de Leads.
El sistema incluye reputación empresarial.
Las empresas pueden:
- Generar enlaces de reseña
- Compartirlos con clientes
- Recibir calificaciones públicas
- Comunicación
- Puntualidad
- Calidad del servicio
- Daño de carga
- Honestidad
- Pago
Las calificaciones impactan la reputación de la empresa dentro del sistema.
El sistema cuenta con un motor de notificaciones basado en eventos.
- Dispatcher multi-canal
- Database Channel
- Email Channel
- Eventos desacoplados
- Queue para envío de emails
- Scheduler para eventos programados
- Servicio publicado
- Servicio asignado
- Servicio finalizado
- Servicio visto múltiples veces
- Servicio próximo a vencer
- Resumen diario de actividad
Este sistema está diseñado para escalar hacia:
- Push notifications
- Alertas inteligentes
- Matching automático de cargas
Interfaz diseñada con enfoque mobile-first.
Incluye:
- Skeleton loaders
- Modales reutilizables
- Cards dinámicas
- Feedback visual
- Layout responsive
- Animaciones suaves
- Componentización reutilizable
El frontend consume la API REST mediante fetch.
Usuario inicia sesión
↓
POST /api/empresa/login
↓
Backend valida credenciales
↓
Se genera token Sanctum
↓
Frontend guarda token
↓
Peticiones protegidas usan:
Authorization: Bearer {token}
project-root
│
├── backend
│ ├── app
│ │ ├── Modules
│ │ │ ├── Empresa
│ │ │ ├── Usuario
│ │ │ ├── Servicio
│ │ │ ├── Notificacion
│ │ │ ├── Resena
│ │ │ └── SolicitudMudanza
│ │ └── Services
│ │
│ ├── database
│ │ ├── migrations
│ │ └── seeders
│ │
│ └── routes
│ └── api.php
│
└── frontend
├── src
│ ├── app
│ ├── components
│ ├── hooks
│ ├── styles
│ └── utils
cd backend
composer install
npm install
cp .env.example .env
php artisan key:generate
php artisan migrate --seed
php artisan servecd frontend
npm install
cp .env.local.example .env.local
npm run devMikkel Llaven Alonso
Software Engineer – Full Stack
- LinkedIn: mikkel-llaven-alonso-5893b4280
- Email: mikkel_03@outlook.com
This project is proprietary software developed for a private client.
The repository is shared only for portfolio purposes.
See the LICENSE file for details.