Single codebase for:
- Docker local development (local Postgres + Redis)
- Dyad preview (Supabase Postgres + cloud Redis)
- Vercel web publish (frontend +
/api/*rewrite to backend)
cp .env.example .env
docker compose up -d --buildOpen: http://localhost:8001 (or http://<your-server-ip>:8001 from another device on your LAN)
Follow the full guide:
DEPLOYMENT_VERCEL_SUPABASE.md
.env.example(local Docker).env.dyad.example(Dyad + Supabase).env.vercel.example(Vercel template)
- Do not commit real API keys or DB passwords.
- Use publishable keys in browsers; keep secret/service-role keys server-only.
If you hit Docker build errors, check DEPLOYMENT_VERCEL_SUPABASE.md section Docker troubleshooting.
If the page is blank or backend exits with SyntaxError, pull latest code and rebuild containers (see Docker troubleshooting in DEPLOYMENT_VERCEL_SUPABASE.md).
Quick check if browser shows blank page:
docker compose ps
docker compose logs -f agent-web-appIf browser shows "Unsafe attempt to load URL ... chrome-error://chromewebdata", the app endpoint is unreachable. Verify container health and logs, then refresh:
docker compose ps
docker compose logs --tail=200 agent-web-appContainer health check endpoint: GET /healthz (public).
Home page (/index.html) now runs React + React Router + Tailwind (HashRouter) as the primary UI.
Legacy page URLs (chat.html, settings.html, memory-explorer.html, ai-models.html, admin.html, login.html) now redirect to React hash routes.
- Move chat composer + message list from
chat.htmlinto React route/chat. - Move model/provider form into React route
/models. - Move memory explorer table into React route
/memory. - Move admin dashboard cards into React route
/adminand keep role guard. - Replace Babel-CDN setup with Vite build when ready for production SPA bundle.