Files
dylanmazzei-website/README.md
T
Alejandro Veras f73968c0dc Remove CTAs that pointed to pages outside the content package
Playbook, Poetry, Fractional Roles, and four service lines keep their copy
but no longer show a button, since those pages are not part of the site.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 11:13:08 -04:00

42 lines
1.8 KiB
Markdown

# dylanmazzei.com
Sitio de Dylan Mazzei, Founder & Operator. HTML estático generado con un script de Node sin dependencias.
## Estructura
```
src/layout.mjs Layout compartido: <head>, nav, footer, iconos y helpers
src/pages/*.mjs Una página por archivo (texto literal del documento de contenido)
static/ Se copia tal cual a dist/ (CSS, JS, imágenes, favicon)
build.mjs Genera dist/ + sitemap.xml + robots.txt + 404.html
```
| Ruta | Archivo |
|------|---------|
| `/` | `src/pages/home.mjs` |
| `/about/` | `src/pages/about.mjs` |
| `/portfolio/` | `src/pages/portfolio.mjs` |
| `/consulting/` | `src/pages/consulting.mjs` |
| `/consulting/marketing/` | `src/pages/marketing.mjs` |
| `/consulting/business-setup/` | `src/pages/business-setup.mjs` |
| `/contact/` | `src/pages/contact.mjs` |
| `/press/` | `src/pages/press.mjs` |
## Desarrollo
```bash
npm run build # genera dist/
npm run dev # build + servidor local
```
## Deploy en Vercel
Importa el repo en Vercel. `vercel.json` ya define el build (`npm run build`), la salida (`dist`) y las URLs limpias con slash final. No hace falta configurar nada más.
## Pendientes de contenido
- **Press:** confirmar el titular exacto del artículo de Gulf Magazine y su URL (`FEATURE` en `src/pages/press.mjs`).
- **Páginas fuera del alcance actual:** Playbook, Poetry, Fractional Roles, Business Optimization, Supply Chain, Cybersecurity y Education no forman parte del sitio. Sus secciones se muestran sin botón; si se crean esas páginas, se añade el botón con su texto original del documento.
- **Calendario:** poner el link real de agenda en `SITE.calendar`.
- **Formulario de contacto:** hoy abre el cliente de correo con el mensaje prellenado. Para recibirlo directo hay que conectar un servicio (Formspree, Resend, etc.).