mirror of
https://github.com/marcogll/AnchorOS.git
synced 2026-03-15 13:24:27 +00:00
feat: implement customer registration flow and business hours system
Major changes: - Add customer registration with email/phone lookup (app/booking/registro) - Add customers API endpoint (app/api/customers/route) - Implement business hours for locations (mon-fri 10-7, sat 10-6, sun closed) - Fix availability function type casting issues - Add business hours utilities (lib/utils/business-hours.ts) - Update Location type to include business_hours JSONB - Add mock payment component for testing - Remove Supabase auth from booking flow - Fix /cita redirect path in booking flow Database migrations: - Add category column to services table - Add business_hours JSONB column to locations table - Fix availability functions with proper type casting - Update get_detailed_availability to use business_hours Features: - Customer lookup by email or phone - Auto-redirect to registration if customer not found - Pre-fill customer data if exists - Business hours per day of week - Location-specific opening/closing times
This commit is contained in:
211
docs/site_requirements.md
Normal file
211
docs/site_requirements.md
Normal file
@@ -0,0 +1,211 @@
|
||||
# Anchor:23 — Site Requirements
|
||||
|
||||
Documento de ejecución para OpenCode / Codex.
|
||||
Define identidad visual, estructura del sitio, copy y reglas de implementación.
|
||||
|
||||
---
|
||||
|
||||
## 1. Objetivo del sitio
|
||||
|
||||
* Representar a Anchor:23 como concepto de belleza de ultra lujo.
|
||||
* Comunicar exclusividad basada en estándar, no en aspiración.
|
||||
* Separar marca institucional de sistemas operativos (booking / kiosk).
|
||||
* Convertir sin presión: membresía y cita.
|
||||
|
||||
---
|
||||
|
||||
## 2. Arquitectura de dominios
|
||||
|
||||
* `anchor23.mx` — Sitio institucional
|
||||
* `booking.anchor23.mx` — Sistema de reservas (The Boutique)
|
||||
* `kiosk.anchor23.mx` — UI táctil en sucursal
|
||||
|
||||
El sitio **anchor23.mx** no contiene lógica compleja.
|
||||
Es contenido, marca y narrativa.
|
||||
|
||||
---
|
||||
|
||||
## 3. Paleta de Color
|
||||
|
||||
### Base
|
||||
|
||||
* Bone White `#F6F1EC` — fondo principal
|
||||
* Soft Cream `#EFE7DE` — bloques y secciones
|
||||
* Mocha Taupe `#B8A89A` — íconos y divisores
|
||||
* Deep Earth `#6F5E4F` — botones primarios
|
||||
* Charcoal Brown `#3F362E` — texto principal / footer
|
||||
|
||||
Reglas:
|
||||
|
||||
* Sin colores saturados
|
||||
* Sin gradientes
|
||||
* Sin sombras duras
|
||||
|
||||
---
|
||||
|
||||
## 4. Tipografía
|
||||
|
||||
### Headings
|
||||
|
||||
* Serif editorial sobria
|
||||
* Ejemplos: The Seasons, Canela
|
||||
|
||||
### Body / UI
|
||||
|
||||
* Sans neutral
|
||||
* Ejemplos: Inter, DM Sans
|
||||
|
||||
Reglas:
|
||||
|
||||
* Mucho espacio
|
||||
* Jerarquía estricta
|
||||
* Peso visual contenido
|
||||
|
||||
---
|
||||
|
||||
## 5. Layout
|
||||
|
||||
* Grid amplio
|
||||
* Márgenes generosos
|
||||
* Ritmo vertical lento
|
||||
* Espacio negativo dominante
|
||||
|
||||
Nunca:
|
||||
|
||||
* UI densa
|
||||
* Animaciones llamativas
|
||||
* Efectos innecesarios
|
||||
|
||||
---
|
||||
|
||||
## 6. Header
|
||||
|
||||
### Navegación
|
||||
|
||||
* Inicio
|
||||
* Nosotros
|
||||
* Servicios
|
||||
* Membresías
|
||||
|
||||
CTA principal:
|
||||
|
||||
* Solicitar Membresía
|
||||
|
||||
---
|
||||
|
||||
## 7. Landing Page
|
||||
|
||||
### Hero
|
||||
|
||||
**Título**
|
||||
ANCHOR:23
|
||||
|
||||
**Subtítulo**
|
||||
Belleza anclada en exclusividad
|
||||
|
||||
**Texto**
|
||||
Un estándar exclusivo de lujo y precisión.
|
||||
|
||||
**CTAs**
|
||||
|
||||
* Ver servicios
|
||||
* Solicitar cita
|
||||
|
||||
---
|
||||
|
||||
### Fundamento
|
||||
|
||||
**Título**
|
||||
Fundamento
|
||||
|
||||
**Subtítulo**
|
||||
Nada sólido nace del caos
|
||||
|
||||
**Texto**
|
||||
Anchor:23 nace de la unión de dos creativos que creen en el lujo no como promesa, sino como estándar.
|
||||
|
||||
Aquí, lo excepcional es norma: una experiencia exclusiva y coherente, diseñada para quienes entienden que el verdadero lujo está en la precisión, no en el exceso.
|
||||
|
||||
---
|
||||
|
||||
### Servicios Exclusivos (Preview)
|
||||
|
||||
#### Spa de Alta Gama
|
||||
|
||||
Sauna y spa excepcionales, diseñados para el rejuvenecimiento y el equilibrio.
|
||||
|
||||
#### Arte y Manicure de Precisión
|
||||
|
||||
Estilización y técnica donde el detalle define el resultado.
|
||||
|
||||
#### Peinado y Maquillaje de Lujo
|
||||
|
||||
Transformaciones discretas y sofisticadas para ocasiones selectas.
|
||||
|
||||
CTA:
|
||||
|
||||
* Ver todos los servicios
|
||||
|
||||
---
|
||||
|
||||
### Testimonios
|
||||
|
||||
Título:
|
||||
Testimonios
|
||||
|
||||
Ejemplos:
|
||||
|
||||
* "La atención al detalle define el lujo real." — Gabriela M.
|
||||
* "Exclusivo sin ser pretencioso." — Lorena T.
|
||||
|
||||
CTA:
|
||||
|
||||
* Solicitar Membresía
|
||||
|
||||
---
|
||||
|
||||
## 8. Footer
|
||||
|
||||
Contenido:
|
||||
|
||||
* Marca y ciudad
|
||||
* Links: Nosotros, Servicios, Contacto
|
||||
* Legal: Privacy Policy, Legal
|
||||
* Teléfono y correo
|
||||
|
||||
---
|
||||
|
||||
## 9. Páginas internas
|
||||
|
||||
### /servicios
|
||||
|
||||
* Listado completo
|
||||
* CTA a booking.anchor23.mx
|
||||
|
||||
### /historia
|
||||
|
||||
* Origen de Anchor
|
||||
* Significado de : y 23
|
||||
|
||||
### /contacto
|
||||
|
||||
* Formulario
|
||||
* Datos de contacto
|
||||
|
||||
### /franchises
|
||||
|
||||
* Modelo: una sucursal por ciudad
|
||||
* No franquicia masiva
|
||||
|
||||
---
|
||||
|
||||
## 10. Principios de ejecución
|
||||
|
||||
* HTML semántico
|
||||
* CSS limpio
|
||||
* JS mínimo
|
||||
* Accesibilidad básica
|
||||
* Performance sobre efectos
|
||||
|
||||
El sitio debe sentirse silencioso, sólido y permanente.
|
||||
|
||||
Reference in New Issue
Block a user