feat: improve seo, trust signals, and performance
This commit is contained in:
@@ -1,81 +1,52 @@
|
||||
# AGENTS.md
|
||||
|
||||
## Stack
|
||||
## Stack and runtime
|
||||
- Astro 5 SSR with `@astrojs/node` in `standalone` mode.
|
||||
- Production entrypoint is `node ./dist/server/entry.mjs`.
|
||||
- Runtime target is Node 20 (`Dockerfile` and `nixpacks.toml` both pin Node 20).
|
||||
- TypeScript extends `astro/tsconfigs/strict`.
|
||||
|
||||
- **Framework:** Astro 5
|
||||
- **Adapter:** `@astrojs/node`
|
||||
- **Rendering mode:** SSR
|
||||
- **Runtime target:** Node standalone en VPS con Dokploy
|
||||
- **Styling:** CSS custom con variables CSS
|
||||
- **Responsive approach:** mobile-first
|
||||
## Verified commands
|
||||
- Install deps: `npm install` or `npm ci`
|
||||
- Dev server: `npm run dev`
|
||||
- Type/content check: `npm run check`
|
||||
- Build: `npm run build`
|
||||
- Local preview: `npm run preview`
|
||||
- Production start: `npm run start`
|
||||
|
||||
## Arquitectura del producto
|
||||
Recommended verification after UI/content changes:
|
||||
1. `npm run check`
|
||||
2. `npm run build`
|
||||
|
||||
Sitio institucional multipágina enfocado en **captación de leads por WhatsApp**.
|
||||
There are currently no repo scripts for linting, formatting, or tests, and no CI workflows to rely on.
|
||||
|
||||
Páginas aprobadas:
|
||||
## Real app structure
|
||||
- File-based routes live in `src/pages/`.
|
||||
- Main public routes: `index.astro`, `nosotros.astro`, `bodas-reales.astro`, `corporativo-business.astro`, `reuniones-familiares.astro`, `contacto.astro`.
|
||||
- Legal routes are part of the real surface area: `cookies.astro` and `privacidad.astro`.
|
||||
- Shared shell is `src/layouts/MainLayout.astro`.
|
||||
- Shared UI lives in `src/components/`.
|
||||
- Global styling is split across `src/styles/tokens.css`, `base.css`, `layout.css`, `components.css`, `utilities.css`, and `animations.css`.
|
||||
|
||||
- Home
|
||||
- Nosotros
|
||||
- Bodas Reales
|
||||
- Corporativo & Business
|
||||
- Reuniones Familiares
|
||||
- Contacto
|
||||
## Important implementation facts
|
||||
- `MainLayout.astro` is the real wiring point: it imports all global CSS and mounts `SiteHeader`, `SiteFooter`, `WhatsAppButton`, and `CookieBanner` on every page.
|
||||
- `MainLayout.astro` also owns global client behavior: reveal-on-scroll, scroll progress bar, reduced-motion handling, and internal-link fade transitions.
|
||||
- This is a marketing site optimized for WhatsApp lead capture. Keep WhatsApp as the primary CTA and treat the contact form as secondary.
|
||||
- The contact form in `src/pages/contacto.astro` is presentational only (`method="dialog"`); do not describe or treat it as a working backend submission flow.
|
||||
- The WhatsApp destination is hardcoded in multiple places (`+34 678 17 15 13` / `34678171513`). If lead routing changes, search for all occurrences instead of updating a single component and assuming coverage.
|
||||
|
||||
## Comandos
|
||||
## Content and design constraints
|
||||
- Keep the mobile-first approach in base styles and layout decisions.
|
||||
- Use CSS variables/tokens instead of introducing utility CSS frameworks.
|
||||
- Keep service pages structurally consistent, but do not clone copy blindly: adapt CTA, gallery, and messaging per service.
|
||||
- Galleries belong inside each service page, not as a separate gallery page.
|
||||
- Preserve the premium editorial tone from `DESIGN.md`; gold is an accent, not a dominant fill color.
|
||||
|
||||
Comandos esperados para la implementación del proyecto:
|
||||
## Deployment notes
|
||||
- Docker and Nixpacks both expect a built SSR app and start with `node ./dist/server/entry.mjs`.
|
||||
- Runtime env defaults used by deploy config: `HOST=0.0.0.0`, `PORT=4321`, `NODE_ENV=production`.
|
||||
|
||||
| Acción | Comando |
|
||||
| --- | --- |
|
||||
| Instalar dependencias | `npm install` |
|
||||
| Desarrollo | `npm run dev` |
|
||||
| Build | `npm run build` |
|
||||
| Preview / ejecución standalone | `node ./dist/server/entry.mjs` |
|
||||
|
||||
## Convenciones
|
||||
|
||||
1. Priorizar claridad comercial y conversión por WhatsApp.
|
||||
2. Mantener arquitectura mobile-first desde el CSS base.
|
||||
3. Usar variables CSS para tokens de color, spacing, tipografía, radios y sombras.
|
||||
4. Evitar frameworks de utilidades si no aportan valor claro al sistema visual.
|
||||
5. Mantener consistencia estructural entre páginas de servicio.
|
||||
6. Las galerías deben vivir dentro de cada servicio, no como página independiente.
|
||||
7. El formulario de contacto debe ser secundario respecto a WhatsApp.
|
||||
|
||||
## Don'ts
|
||||
|
||||
- No usar `@astrojs/cloudflare` para este proyecto: el deployment objetivo es Dokploy sobre VPS.
|
||||
- No diseñar desktop-first.
|
||||
- No mezclar estilos premium editoriales con componentes visualmente ruidosos.
|
||||
- No usar dorado como color masivo de relleno; usarlo como acento.
|
||||
- No construir páginas de servicio genéricas copiadas una de otra sin adaptar copy, CTA y galería.
|
||||
|
||||
## Estructura CSS recomendada
|
||||
|
||||
- `src/styles/tokens.css`
|
||||
- `src/styles/base.css`
|
||||
- `src/styles/layout.css`
|
||||
- `src/styles/components.css`
|
||||
- `src/styles/utilities.css`
|
||||
|
||||
## Skills
|
||||
|
||||
Habilidades especialmente relevantes para este proyecto:
|
||||
|
||||
- `project-docs`
|
||||
- `brainstorming`
|
||||
- `responsive-design`
|
||||
- `visual-design-foundations`
|
||||
- `interface-design`
|
||||
- `accessibility-compliance`
|
||||
|
||||
## Nota para futuros agentes
|
||||
|
||||
Antes de implementar:
|
||||
|
||||
1. Leer `README.md`
|
||||
2. Leer este `AGENTS.md`
|
||||
3. Leer `DESIGN.md`
|
||||
4. Respetar el enfoque comercial: WhatsApp primero
|
||||
5. Respetar el enfoque visual: claro editorial premium
|
||||
## Repo-specific gotchas
|
||||
- Ignore generated/build output: `.astro/` and `dist/`.
|
||||
- `.gitignore` also excludes `.opencode/`, `.worktrees/`, and local planning artifacts under `docs/plans/`.
|
||||
- Read `DESIGN.md` before making visual changes; it contains the project’s visual system and tone constraints.
|
||||
|
||||
Reference in New Issue
Block a user