ERP a la medida (Python stdlib + SQLite + vanilla JS SPA). Incluye server.py, index.html, utilidades y documentación: README, MODELO_DATOS, API, INSTALACION, CONTEXTO, NEGOCIO, WEB, ONBOARDING, VALOR_SISTEMA, CLAUDE. Secretos y datos (art4hotel.db, secret.key, ACCESOS.html, uploads/, backups/) excluidos vía .gitignore. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
3.5 KiB
3.5 KiB
Art4Hotel — Sitio web público (art4hotel.com)
Landing pública que se alimenta del Hub. Captura leads y presenta productos. Última actualización: 2026-05-31
Infraestructura
- Repo:
github.com/Claudeandrefg/art4hotel(ramamain) - Hosting: GitHub Pages →
art4hotel.com(apex) +www.art4hotel.com - SSL: Let's Encrypt automático (GitHub Pages). DNS gestionado en Wix.
- Apex: 4 A records a GitHub Pages
185.199.108-111.153 wwwCNAME →claudeandrefg.github.io- ⚠️ Wix NO deja cambiar nameservers (bloqueados a wixdns) → no se pudo migrar a Cloudflare sin transferir el dominio
- Apex: 4 A records a GitHub Pages
- Carpeta local:
C:\Users\claud\Documents\Claude\Art 4 Hotel\Pagina Web\art4hotel\
Estructura del sitio
index.html— landing (hero, trust strip, grid productos, proceso, wizard de cotización)gracias.html— página post-envío del formularioproductos.json— datos de productos (generado por el sync)Recursos/catalogo/— fotos comprimidas (generadas por el sync)Recursos/— logos SVG, favicons, imágenes de marcasync_catalogo.py— script de sincronización Hub → sitio
Formulario de leads
- Wizard de 4 pasos (negocio → productos → detalles → contacto)
- Enviado vía FormSubmit a
ventas@art4hotel.com(sin API key, ya activado) - Campos con
name=legibles → llegan estructurados al correo _nextredirige agracias.html
Catálogo dinámico Hub → Web
Flujo:
HUB sync_catalogo.py SITIO (GitHub Pages)
producto 🌐 mostrar_en_web descarga + comprime fotos grid de productos base
ejemplo 🌐 web_ejemplo (7MB → ~80KB, Pillow) ↓ click
+ web_etiqueta (zona) genera productos.json modal storytelling
git commit + push "Así se ve personalizado"
Correr el sync
cd "C:\Users\claud\Documents\Claude\Art 4 Hotel\Pagina Web\art4hotel"
python sync_catalogo.py # descarga + JSON + commit + push (publica)
python sync_catalogo.py --no-push # solo local (para revisar antes)
Requiere estar en la red del Hub (192.168.50.46). Usa Pillow para comprimir.
Qué publica
- Productos con
mostrar_en_web=1Y con foto - Por producto: nombre, descripcion_web, categoria, personalizaciones (tipos_trabajo), foto base, y ejemplos (pedidos con
web_ejemplo=1) - Ejemplos: foto + técnica + web_etiqueta (zona pública, NUNCA el cliente real → privacidad)
Diseño / storytelling
- Grid de productos base; cards con foto + badge de ejemplos
- Click → modal: foto base + descripción + personalizaciones + galería "Así se ve personalizado" (ejemplos grandes,
object-fit:containpara no recortar) - Branding A4H (Outfit + Playfair + olive/sand/cream), responsive
Workflow de desarrollo del sitio (preview local)
- Servidor local:
python -m http.server 8899en la carpeta del repo →http://localhost:8899 - Editar
index.htmllocal → refrescar localhost (cambio instantáneo) - Cuando esté listo:
git add . && git commit && git push→ GitHub Pages publica en ~1 min - Nota: la extensión Claude-in-Chrome NO puede navegar a localhost ni art4hotel.com (dominios restringidos); el preview lo ve el usuario en su navegador.
Pendientes web
- Filtros por uso (boda/empresa/tienda/hotel) — requiere atributo "uso" en producto
- Secciones por tipo de producto
- Foto base del modal recorta en cuadrado (hacer sin recorte)
- Analytics (Cloudflare Web Analytics o GA)
- Más productos curados + etiquetas de zona en ejemplos