El sitio web de ESG México está construido sobre un stack moderno centrado en rendimiento y contenido editorial. Astro 6 genera páginas estáticas que se despliegan en Vercel; el contenido vive en Sanity CMS como fuente única de verdad; TailwindCSS 4 gestiona los estilos mediante el plugin de Vite; y React 19 potencia los componentes interactivos (formularios, carruseles). El motor de Node requerido esDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/ivanespinosa/esg-mexico-sitio-web/llms.txt
Use this file to discover all available pages before exploring further.
>=22.12.0 — versiones anteriores no son compatibles.
Dependencias principales
Framework
astro
@astrojs/react
@astrojs/vercel
^6.4.6 — generación estática y adaptador Vercel.@astrojs/react
^5.0.7 — integración de React en islas.@astrojs/vercel
^10.0.8 — adapter para despliegue serverless.Estilos
tailwindcss
@tailwindcss/vite
@tailwindcss/typography
^4.3.1 — CSS utility-first vía plugin Vite.@tailwindcss/vite
^4.3.1 — integración con el bundler.@tailwindcss/typography
^0.5.20 — estilos para cuerpo de artículos.CMS y Contenido
@sanity/client
sanity
@portabletext/to-html
@portabletext/react
^7.23.0 — cliente headless para queries GROQ.sanity
^6.1.0 — Sanity Studio (devDependency).@portabletext/to-html
^5.0.2 — serialización de Portable Text.@portabletext/react
^6.2.0 — renderizado en componentes React.Email y React
nodemailer
react
@types/nodemailer
^9.0.1 — envío SMTP desde /api/autoevaluacion.react
^19.2.7 + react-dom ^19.2.7 — UI interactiva.@types/nodemailer
^8.0.1 — tipos TypeScript para nodemailer.Configuración de Astro
El archivoastro.config.mjs define el sitio canónico, desactiva las barras finales, conecta el adaptador de Vercel y carga TailwindCSS como plugin de Vite — evitando el paso de PostCSS tradicional.
astro.config.mjs
trailingSlash: "never" es importante para evitar redirecciones dobles en Vercel y mantener URLs canónicas consistentes en los meta tags de SEO.Package.json completo
package.json
Flujo de datos
El sitio sigue el patrón SSG con datos externos: en tiempo de build, Astro consulta Sanity vía GROQ, genera todas las páginas estáticas y las despliega en la CDN de Vercel. No existe base de datos propia; Sanity es la única fuente de contenido dinámico (artículos, noticias, autoras, etiquetas).Build time
Astro ejecuta
BLOG_LIST_QUERY y NOTICIAS_QUERY contra Sanity CDN para pre-renderizar todas las rutas en tiempo de compilación.Runtime
El endpoint
/api/autoevaluacion corre como función serverless en Vercel y usa nodemailer con SMTP de Google Workspace para despachar correos.