# Bay Area IT Vite/React marketing site for `bayareait.services`. ## Local ```bash npm install npm run dev npm run dev:api ``` `npm run dev` starts the frontend on `http://127.0.0.1:3012`. Run `npm run dev:api` in a second terminal so the contact form can post to the local API on `http://127.0.0.1:3013`. ## Production build ```bash npm run build npm start ``` The production build regenerates `robots.txt` and `sitemap.xml`, runs Vite, prunes unused assets, and prerenders route HTML into `dist/`. ## Environment variables ```bash AMAZON_USER=... AMAZON_PASSWORD=... CONTACT_TO_EMAIL=info@bayareaaffiliates.com CONTACT_FROM_EMAIL=info@bayareaaffiliates.com PORT=8080 ``` `CONTACT_TO_EMAIL` and `CONTACT_FROM_EMAIL` are optional and default to `info@bayareaaffiliates.com`. ## Docker ```bash docker compose up --build -d ``` The container serves the built site and the `/api/contact` endpoint on `http://127.0.0.1:8080`. ## Reverse proxy with host Caddy ```caddy bayareait.services { encode zstd gzip reverse_proxy 127.0.0.1:8080 } ``` ## Launch notes - Static assets and the contact form endpoint are served by the Node app inside the container. - SPA fallback is enabled while prerendered route folders still resolve directly. - Claims such as `24/7`, `30+ local businesses`, and legal company details should be verified before launch.