Desarrollo
El proyecto raíz reúne React/Vite (src), adaptadores HTTP (api) y servicios Node (server). vite.config.ts monta los manejadores locales; vercel.json enruta las APIs y finalmente la SPA. El panel de apps/admin y el sitio estático de apps/marketing se publican por separado; véase separación de plataforma.
| Comando desde la raíz | Resultado |
|---|---|
npm run dev |
Editor y rutas locales, puerto 3000. |
npm run lint |
Ejecuta primero prelint para generar runtime MCP y después tsc --noEmit; no es ESLint. |
npm run build |
Aplica el parche JWKS, genera runtimes servidor y compila Vite con manifiesto. |
npm run preview |
Vista previa del artefacto Vite; no sustituye una prueba de las funciones del alojamiento. |
npm run check:bundle |
Requiere build previo; comprueba carga inicial y paneles diferidos. |
npm run clean |
Borra dist y server.js; revisar antes de ejecutar. |
npm --prefix apps/admin run dev |
Servidor Vite del panel. |
npm --prefix apps/admin run build |
Artefacto independiente del panel en apps/admin/dist. |
No editar a mano los bundles server/**/production.mjs ni los otros .mjs generados e ignorados por git. Los scripts scripts/patch-jwks-esm.cjs y scripts/build-mcp-runtime.cjs forman parte del build real. Mantener bun.lock para la raíz y apps/admin/package-lock.json para el panel.
Un arranque ordinario puede acceder al Firebase configurado: desarrollo no implica aislamiento de datos. Las suites offline y los runners con fixtures son la vía reproducible para validar sin cambios en servicios reales. Los cambios en reglas, privilegios, DNS, facturación y publicaciones requieren revisar su destino antes de cualquier operación.
