[▲ Vercel Community](/) · [Categories](/categories) · [Latest](/latest) · [Top](/top) · [Live](/live) [Help](/c/help/9) # Static build skipped – only serverless function deployed 58 views · 0 likes · 3 posts Jasonstolworthy (@jasonstolworthy) · 2025-11-10 **Current vs Expected Behavior** I’ve spent \~12 hours trying to get my Vite frontend and Express backend (monorepo) to deploy on Vercel. Every production deploy runs the Vite build (logs show build/index.html, build/assets/...), but the resulting deployment only contains the serverless lambda. vercel inspect shows two λ api/serverless/index.ts entries and zero static builds, so / always returns Vercel’s default 404 even though /api/apps works. I expect / to serve my SPA (frontend/build/index.html). **Code / Configuration / Repro Steps** 1. Monorepo layout: `api/ (Express + Prisma serverless)` `` frontend/ (Vite SPA, `npm run build` → `frontend/build`) `` `vercel.json` 2. vercel.json: `{` ` "version": 2,` ` "builds": [` ` { "src": "api/serverless/index.ts", "use": "@vercel/node" },` ` {` ` "src": "frontend/package.json",` ` "use": "@vercel/static-build",` ` "config": { "distDir": "build", "buildCommand": "npm run build" }` ` }` ` ],` ` "routes": [` ` { "src": "/api/(.*)", "dest": "api/serverless/index.ts" },` ` { "handle": "filesystem" },` ` { "src": "/(.*)", "dest": "/index.html" }` ` ]` `}` 3. frontend/package.json: `{` ` "scripts": {` ` "prebuild": "npm run sdk:gen",` ` "build": "vite build"` ` }` `}` 4. Root directory in Vercel settings is blank and “Include files outside root” is disabled. Repo is connected via Git. Deploy command is vercel --prod --yes from a clean clone. 5. Build logs show Vite producing build/index.html, build/assets/index-\*.js/css. No errors. 6. But vercel inspect https://aihomebrewapps-pn7kxu1gn-jason-stolworthys-projects-ecf26116.vercel.app (and every other deployment) shows only: `Builds:` ` ┌ . [0ms]` ` ├── λ api/serverless/index.ts (17.31MB) [iad1]` ` └── λ api/serverless/index.ts (17.31MB) [iad1]` No static build, no index.html. **Project Info** * Project: aihomebrewapps (project id prj_zjkJfhyzsdZznlKuolNGMeZm2b8j) * Frameworks: Express (serverless), Vite SPA * Environment: Production (vercel --prod --yes), Hobby account * Repo: github.com/jasonstolworthy/aihomebrew * Custom domain: www.aihomebrew.com * Deployment IDs with this issue: dpl_FVcBZSpcP6GPoShNDmN3Q6qNtuNy, dpl_EZt5hcz8PNrakytcfuP2N5R51bPp, dpl_FaykbUXTtuayVTtEq3PceJV9eHAG, dpl_FaykbUXTtuayVTtEq3PceJV9eHAG, dpl_2GV76JAF2wjHdpazSEQDTGYUkXLf, etc. **Why I’m Stuck** I’ve triple-checked vercel.json, rebuilt locally, toggled root-dir settings, re-linked, re-cloned, aliased multiple deployment URLs—everything. The Vite build runs but Vercel drops the output, so my domain will never serve the SPA. I’m losing it at this point. 😅 Has anyone seen @vercel/static-build silently skip copying its output even though the build succeeds? I just need the static files to land in .vercel/output/static so the catch-all route works. Happy to share full logs or grant access. Any ideas appreciated! system (@system) · 2025-11-10 There's another community post with 404 debugging tips that might be helpful. Please give these solutions a try and let us know how it goes. https://community.vercel.com/t/debugging-404-errors/437 A human should be around soon to offer more advice. But you can also get helpful information quickly by asking [v0](https://v0.dev/). If you're having trouble deploying an Express app, this guide can help. https://vercel.com/guides/using-express-with-vercel You can also ask [v0](https://v0.dev/) for suggestions tailored to your own project setup. system (@system) · 2026-01-20 Hi @jasonstolworthy! 🙂 We haven't heard back from you. If you're still stuck, feel free to share any updates, logs, or additional context that might help us assist you better!