SPA with theme switching and Firebase Functions.
web/: Vite + React 19 + TypeScript SPAfunctions/: Firebase Functions (TypeScript)- Hosting rewrites:
/api/contact,/sitemap.xml, SPA fallback
- Replace IDs in
.firebasercandfirebase.json. cd web && npm i && npm run buildcd ../functions && npm i && npm run build- At repo root:
firebase deploy
- Enable Email/Password sign-in in Firebase Authentication and create an admin user.
- Visit
/adminin the deployed site (orhttp://localhost:5173/adminduring development) and log in with that account. - From there you can edit the site name, homepage blurb, manage projects, update the resume URLs, and adjust contact copy while reviewing recent contact form submissions.
- Every admin form now supports English and Japanese fields. Populate both so the language switcher (US / Japan flags) on the public site can render a complete experience in either language.