Before you start: static export vs server deployment
v0 builds Next.js projects. Next.js can run in two modes: server-rendered (requires a Node.js server) or static export (plain HTML/JS files). Porch hosts static files. So the workflow is: export → build locally → upload the static output.
If your v0 project uses server features like API routes, server components with database calls, or Next.js Image Optimization, those parts won’t work on Porch — only the static UI will render. For purely visual components, dashboards, and single-page apps, this works perfectly.
Step 1: Export your v0 project
In v0, open your project and look for the download or export option. v0 lets you download the project as a zip file. Extract it to a folder on your computer.
Step 2: Configure for static export
Open the extracted project folder. Find next.config.js (or next.config.mjs) and add the static export option:
If next.config.js doesn’t exist, create it with that content. If it already has configuration, add the output: 'export' line to the existing object.
Note: If your project uses Next.js Image Optimization (next/image), you’ll also need to add images: { unoptimized: true } to the config — otherwise the build will fail.
Step 3: Build the static output
Open Terminal (Mac) or Command Prompt (Windows), navigate to your project folder, and run:
This generates an out/ folder inside your project directory containing all the static files.
Step 4: Upload the out/ folder to Porch
Sign in to Porch, click + New Porch, and drag the out/ folder onto the upload area. Porch deploys it in about 30 seconds and gives you a live yourapp.getporch.app URL.
Step 5: Share it (with access control if needed)
Copy your Porch URL and share it. By default, anyone with the link can open it. From your Porch dashboard you can switch to password-protected or invite-only access anytime — no re-deploy needed.
Troubleshooting
The build failed with “next/image” error+
Add images: { unoptimized: true } to your next.config.js. The Next.js static export mode doesn’t support the built-in image optimizer.
The build succeeded but pages give 404 errors+
Make sure you uploaded the out/ folder, not the parent project folder. The out/ folder should contain index.html at its root.
API routes in my v0 project don’t work+
Static exports can’t include Next.js API routes (they require a Node.js runtime). You’ll need to move API logic to an external service (like a public API) or remove it from the static build. The frontend UI will still render; only the server-dependent parts won’t function.