Skip to main content

Multi-target deployment proving runtime portability via SvelteKit's adapter system. Today only the Vercel serverless target is wired; the container target is a planned portability goal.

Targets and adapters

Target Runtime Platform Adapter Status
Serverless Node.js Vercel adapter-vercel Live
Container Bun Koyeb svelte-adapter-bun (fallback adapter-node) Planned

svelte.config.js hardcodes adapter-vercel (runtime: 'nodejs22.x'). The container adapters (svelte-adapter-bun, adapter-node) are not installed and there is no Dockerfile or DEPLOY_TARGET switch yet. Swapping adapters needs no application code changes — that portability is the point.

Known limitations

  • Bun on Vercel: SvelteKit isn't officially listed (Next.js, Express, Hono, Nitro only) — may break without warning.
  • Vercel lock-in: proprietary features (image optimization, ISR) create migration friction; the adapter system contains it.

See vendors.md for pricing, free tier limits, and platform alternatives.

← Back to Stack

Think this pattern could be better? Tell us how.

Leave feedback