Logo
Portfolio Personal - España
Explorador de archivos

BarberTime

Aplicación web de gestión de citas para barberías. Permite a los clientes reservar citas en sus barberías favoritas de forma rápida y sencilla, mientras que los propietarios pueden centrarse en su trabajo sin preocuparse por la gestión de agenda.

Página de inicio de BarberTime
1 / 3

Funcionalidades Principales

📅

Reserva de Citas

Los clientes pueden ver disponibilidad en tiempo real y reservar su cita en segundos.

💈

Gestión de Barberías

Panel de administración para gestionar servicios, horarios y empleados.

📊

Dashboard

Estadísticas y métricas para optimizar el negocio.

Stack Tecnológico

Tecnologías utilizadas en el desarrollo de BarberTime

Frontend

Nuxt 3

Framework Principal

Framework fullstack basado en Vue 3 con SSR, routing automático y optimización de rendimiento. Proporciona una experiencia de desarrollo fluida y un rendimiento óptimo.

Vue 3

UI Framework

Framework progresivo de JavaScript con Composition API para construir interfaces reactivas y componentes reutilizables.

TypeScript

Lenguaje Base

Tipado estático para mayor robustez del código, mejor autocompletado y detección temprana de errores.

Tailwind CSS

Estilos

Framework de utilidades CSS para crear interfaces modernas y responsive de forma rápida y consistente.

Backend

Laravel

Framework PHP

Framework PHP robusto y elegante para el desarrollo de la API REST. Incluye autenticación, validación, ORM Eloquent y sistema de colas para notificaciones.

RESTful APIEloquent ORMAuthentication

PHP 8+

Lenguaje Backend

Lenguaje de servidor con las últimas características como typed properties, match expressions y constructor promotion.

Base de Datos

MySQL

Base de Datos Relacional

Sistema de gestión de bases de datos para almacenar información de usuarios, barberías, servicios y reservas con relaciones complejas.

El Desafío

Retos técnicos y problemáticas resueltas en el desarrollo

Sistema de Reservas en Tiempo Real

Implementar un sistema de reservas que muestre disponibilidad actualizada y evite conflictos de horarios. Los principales retos incluyeron:

  • Sincronización de disponibilidad entre múltiples clientes
  • Gestión de zonas horarias y horarios de apertura
  • Prevención de reservas duplicadas con bloqueo optimista
  • Calendario interactivo con slots disponibles

Gestión Multi-Barbería

Desarrollar una arquitectura que permita gestionar múltiples barberías, cada una con sus propios empleados, servicios y horarios:

  • Sistema de roles (administrador, barbero, cliente)
  • Configuración independiente por establecimiento
  • Gestión de empleados y sus horarios de trabajo
  • Catálogo de servicios con precios y duraciones

Experiencia de Usuario Fluida

Diseñar una interfaz intuitiva que permita reservar una cita en pocos pasos:

  • Flujo de reserva simplificado en 3 pasos
  • Búsqueda y filtrado de barberías cercanas
  • Visualización clara de servicios y precios
  • Historial de citas y posibilidad de repetir reservas

API RESTful con Laravel

Desarrollar una API robusta y bien documentada que conecte el frontend Nuxt con el backend Laravel. Se implementó autenticación con Laravel Sanctum, validación de requests, manejo de errores consistente y paginación eficiente para listados de barberías y citas.