Saltar al contenido
POLARGATE
Hostelería: hotel resort de 4 estrellas todo incluido, Caribe

Una web de resort que Google, las redes sociales y los asistentes de IA sí pueden leer

Polargate convirtió la web bilingüe de un resort caribeño de 349 habitaciones en un sitio totalmente estático y blindado, con datos estructurados para la búsqueda con IA, y lo mantiene con una cuota mensual y una auditoría automática el día 1 de cada mes.

Página de inicio de hotelmarien.com: el logo de Marien Puerto Plata y el menú sobre una vista aérea de las piscinas del resort, hamacas azules, palmeras y edificios.
hotelmarien.com
22
rutas públicas prerrenderizadas como HTML estático
2
idiomas servidos con hreflang bidireccional (ES/EN)
98 KB
imagen principal en móvil, desde unos 288 KB
136 KB
imagen de vista previa social, desde 1,74 MB
33
hallazgos confirmados corregidos en el ciclo de auditoría de agosto de 2026
3
incidencias P0 cerradas y verificadas en producción en junio de 2026

El problema

La web se veía bien y se leía bien, pero los rastreadores veían otra cosa. El contenido se pintaba en el navegador, así que cada subpágina entregaba a Google, a las redes sociales y a los asistentes de IA el título, el canonical y las etiquetas Open Graph de la portada. Las URL inexistentes respondían HTTP 200 en lugar de un 404 real. La Content-Security-Policy estaba en una etiqueta meta, donde el navegador ignora la directiva contra clickjacking. Los datos estructurados publicaban una valoración media que no se podía contrastar con ninguna fuente. Y el backend seguía dependiendo de la plataforma no-code sobre la que se montó el sitio.

Qué construimos

Polargate auditó el sitio en caja negra y caja blanca sobre cuatro pilares (seguridad, SEO, estructura y posicionamiento ante buscadores con IA) y lo corrigió por fases. Primero, cabeceras de seguridad HTTP de verdad; después, un 404 real y un head estático por ruta; y por último, la salida completa de la plataforma no-code hacia un proyecto Supabase propio y una generación estática con vite-react-ssg. Las 22 rutas públicas entregan hoy HTML completo en español e inglés, con grafos schema.org generados desde los ficheros de traducción, llms.txt y llms-full.txt, y un robots.txt que deja pasar a los rastreadores de IA.

El resultado

Las tres incidencias P0 de junio de 2026 se cerraron y verificaron en producción, y el ciclo de agosto resolvió 33 hallazgos confirmados. Hoy el sitio sirve HTML completo por ruta y por idioma a Google, a las redes sociales y a los asistentes de IA, corre sobre infraestructura que Polargate controla de punta a punta y carga una imagen principal en móvil de unos 98 KB en lugar de 288 KB. Una auditoría programada revisa web y repositorio el día 1 de cada mes e informa; nunca despliega por su cuenta. Polargate no atribuye aquí cifras de tráfico ni de reservas: los resultados comerciales dependen de mucho más que una web.

Stack

  • React
  • Vite
  • TypeScript
  • Tailwind CSS
  • shadcn/ui
  • React Router
  • TanStack Query
  • Supabase
  • PostgreSQL
  • Deno
  • Resend
  • Vercel
  • Node.js
  • GA4
  • Search Console
  • GitHub
  • Claude
  • OpenAI
hotelmarien.com

El punto de partida

El Hotel Marien es un resort de 4 estrellas todo incluido con 349 habitaciones en Puerto Plata, en la costa norte de República Dominicana. Polargate diseñó y desarrolló su web bilingüe, entregada en marzo de 2026, y desde entonces la mantiene con una cuota mensual. El proyecto incluyó el motor de reservas Paraty Tech, SEO técnico y de contenido, blindaje de seguridad, hosting y copias, y la puesta en marcha de la analítica con GA4, Tag Manager y Search Console. Desde julio de 2026 el hotel usa además una app de huéspedes con su marca sobre Estevano, la plataforma hotelera propia de Polargate, en marien.estevano.com: conserje con IA, reservas de restaurante y spa, servicio de habitaciones e incidencias, con un cartel QR de recepción generado a partir de los colores de marca del hotel.

Lo que encontró la auditoría

En junio de 2026 Polargate hizo una auditoría de caja negra y caja blanca sobre cuatro pilares: seguridad, SEO, estructura y posicionamiento ante buscadores con IA.

  • Las URL inexistentes devolvían HTTP 200 en lugar de un 404 real, así que los buscadores trataban erratas y enlaces rotos como páginas válidas.
  • La Content-Security-Policy vivía en una etiqueta meta, de modo que la directiva frame-ancestors nunca se aplicaba y la protección contra clickjacking no servía de nada.
  • Cada subpágina servía el título, el canonical y las etiquetas Open Graph de la portada, porque el contenido se pintaba en el navegador.
  • Los datos estructurados incluían una valoración media que no se podía contrastar con ninguna fuente real.

Tres de esos puntos eran P0. Los tres se cerraron y se verificaron en producción ese mismo mes.

Lo que reconstruimos

  • Cabeceras de seguridad HTTP de verdad: CSP con frame-ancestors none, X-Frame-Options DENY, HSTS con preload, nosniff, Referrer-Policy y Permissions-Policy.
  • Primero un head estático por ruta y después generación estática completa con vite-react-ssg sobre Vite, React y TypeScript, con Tailwind y shadcn/ui en la interfaz. Las 22 rutas públicas entregan HTML completo en español e inglés, con hreflang bidireccional y una única fuente de rutas en el código.
  • Salida total de la plataforma no-code hacia un proyecto Supabase propio: el formulario de contacto como función edge en Deno, con CORS restringido al dominio del hotel, honeypot en servidor, RLS forzada en la tabla de mensajes y envío por Resend desde un subdominio verificado.
  • Grafos schema.org generados desde los ficheros de traducción: Hotel, cinco HotelRoom, cinco Restaurant, el spa, FAQPage, BreadcrumbList y un nodo WebPage con dateModified y speakable. Más llms.txt y llms-full.txt, y un robots.txt que deja pasar a los rastreadores de IA y bloquea a los que solo consumen ancho de banda.
  • La valoración no verificable, sustituida por la puntuación real del hotel en TripAdvisor y dos reseñas visibles de huéspedes, enlazadas a sus perfiles verificados de TripAdvisor, Booking y Google Maps.

Cómo funciona hoy

La web vive en Vercel con el DNS en Route 53, y la analítica pasa por GA4, Tag Manager y Search Console con consentimiento previo. El trabajo de rendimiento bajó la imagen principal en móvil de unos 288 KB a unos 98 KB con srcset, y la imagen de vista previa social de 1,74 MB a 136 KB. El día 1 de cada mes, una rutina programada de Claude revisa la web en vivo y el repositorio (búsqueda con IA, Core Web Vitals, cosas rotas y seguridad), verifica cada hallazgo de forma adversarial y emite un informe. No despliega nada por su cuenta. Polargate revisa los hallazgos, aplica las correcciones y envía a la dirección del hotel un informe de mantenimiento en lenguaje claro.

FAQ

Preguntas sobre este proyecto

¿Cuánto tiempo llevó todo esto?
Polargate entregó la web en marzo de 2026. La remediación de junio se auditó y se desplegó en tres fases: las cabeceras de seguridad y los head por ruta salieron el mismo día de la auditoría, y los datos estructurados y el formulario blindado una semana después. El ciclo de agosto de 2026, que sacó el sitio de la plataforma no-code y lo reconstruyó como web estática, ocupó un sprint. A partir de ahí, ritmo mensual.
¿Se puede hacer esto con nuestro motor de reservas?
Sí. La web de Marien funciona con el motor de reservas Paraty Tech que el hotel ya tenía, y Polargate no lo sustituyó. El planteamiento vale para otros motores: la web sigue siendo la capa rápida e indexable que responde dudas y entrega tráfico cualificado, y cuidamos el salto para que el consentimiento, la analítica y el seguimiento no se pierdan al entrar en el motor.
Nuestra web está hecha en una plataforma no-code. ¿Se puede rescatar o hay que empezar de cero?
Casi siempre se puede rescatar. Con Marien, Polargate conservó el diseño y el código, quitó las herramientas de la plataforma, movió la base de datos y las funciones a un proyecto Supabase del cliente, pasó el build a generación estática y repuntó las variables de entorno por API. La web no se cayó en ningún momento. Empezar de cero solo tiene sentido si también hay que cambiar el producto o el contenido.
¿Con esto aparecerá nuestro hotel en ChatGPT y en las respuestas con IA de Google?
Nadie puede garantizarlo, y Polargate no lo hace. Lo que sí podemos es quitar los motivos por los que un asistente te ignoraría: HTML completo por ruta en lugar de una página vacía, una respuesta clara bajo cada encabezado, datos estructurados que coinciden con el texto visible, llms.txt y un robots.txt que deja entrar a los rastreadores de búsqueda y respuesta. Que te citen sigue dependiendo de autoridad y frescura, y eso lleva tiempo.
¿Qué incluye realmente el mantenimiento mensual?
El día 1 de cada mes, una auditoría automática revisa la web en vivo y el repositorio (búsqueda con IA, Core Web Vitals, cosas rotas y seguridad) y verifica cada hallazgo antes de reportarlo. Después Polargate decide qué corregir, lo aplica, lo verifica en producción y envía al hotel un informe en lenguaje claro. Las peticiones de contenido, como reeditar fotos, entran en el mismo ciclo. La auditoría nunca despliega sola.

Proyectos relacionados

INITIATE

Arranca el motor

Cuéntanos qué estás construyendo en unas pocas preguntas cortas. Un ingeniero senior responde por escrito en 48 horas laborables con una primera lectura de alcance, plazos y precio.