devbox-preview
$
npx mdskill add vercel-labs/nextjs-fastapi-chat-app-starter/devbox-previewThis starter is used in a workshop where some users run the app inside Vercel Devbox instead of on their laptop. Preserve this setup so preview works without users debugging Devbox internals.
SKILL.md
.github/skills/devbox-previewView on GitHub ↗
--- name: devbox-preview description: Project knowledge for making this repo preview correctly from Vercel Devbox/Sandbox. Use when configuring Next.js dev settings, explaining how users preview the app from Devbox, or responding to localhost, Sandbox URL, port 3000, or cross-origin dev-resource issues. --- # Devbox Preview This starter is used in a workshop where some users run the app inside Vercel Devbox instead of on their laptop. Preserve this setup so preview works without users debugging Devbox internals. ## Required app configuration The frontend must allow Vercel Sandbox preview origins during Next.js development. Keep this in `frontend/next.config.js`: ```js allowedDevOrigins: ["*.vercel.run"] ``` Without this, Next.js can serve the page but block dev-only resources such as HMR from `https://sb-...vercel.run`, causing confusing preview failures. ## Preview model - In Devbox, `localhost` means the remote box, not the user's laptop. - Users should open the published Sandbox URL for port 3000, usually `https://sb-...vercel.run`. - Do not tell Devbox users to open their laptop's `http://localhost:3000`. - The frontend and backend are both reached through Vercel dev on port 3000: - frontend: `/` - backend: `/api/*` ## User-facing guidance When explaining how to preview from Devbox, tell the user: 1. In the Devbox SSH session, run Vercel dev bound to port 3000: ```bash vercel dev -L --listen 0.0.0.0:3000 ``` 2. From a local terminal outside the Devbox SSH session, publish port 3000: ```bash SANDBOX_ID=$(devbox get --output json | python3 -c 'import json, sys; print(json.load(sys.stdin)["response"]["devboxes"][0]["sandboxId"])') sandbox config ports "$SANDBOX_ID" -p 3000 ``` 3. Open the `https://sb-...vercel.run` URL printed by the `sandbox config ports` command. ## Troubleshooting context - If `curl -i http://127.0.0.1:3000/` works inside Devbox but the browser fails, suspect Sandbox port publishing or `allowedDevOrigins`. - If the browser shows a cross-origin dev-resource warning, check `frontend/next.config.js` and restart `vercel dev`. - If curl inside Devbox returns 500, inspect the app error in the `vercel dev` terminal logs.
More from vercel-labs/nextjs-fastapi-chat-app-starter
- python-auroraAWS Aurora PostgreSQL and Aurora DSQL Python integration using asyncpg. Use when building Python backends with Aurora PostgreSQL or Aurora DSQL.
- vercel-servicesProject knowledge for configuring Vercel Services in this Next.js and FastAPI starter. Use when editing vercel.json, adding services, debugging frontend-to-backend routing, or explaining Vercel Services local development and deployment.