Remix 3 starter templates built with @pitlane/dev — the remix() Vite plugin. Every template is the same guest book app; what changes is the runtime, the database, and the deploy target, so you can diff any two templates to see exactly what a platform swap touches.
Scaffold with giget — pick a template directory:
npx giget github:pitlane-tools/templates/<template> my-appThe cloudflare template runs live at guestbook.pitlane.tools — sign the guest book.
| Template | Runtime | Database | Deploys to |
|---|---|---|---|
cloudflare |
workerd (Cloudflare Workers) | SQLite (D1) | Cloudflare Workers |
netlify |
Node.js (Netlify Functions) | PostgreSQL (Netlify Database) | Netlify |
vercel |
Node.js (Vercel Functions) | PostgreSQL (Neon) | Vercel |
railway-node |
Node.js | SQLite (node:sqlite) |
Railway |
railway-bun |
Bun | SQLite (bun:sqlite) |
Railway |
railway-deno |
Deno | SQLite (node:sqlite) |
Railway |
deno-deploy |
Deno | PostgreSQL (Deno Deploy) | Deno Deploy |
github-pages |
Service Worker | IndexedDB (idb-keyval) |
GitHub Pages |
Each template ships a GitHub Actions deploy workflow following the Pitlane deploy guides: the Vite build runs in your CI, and the platform only ever receives built artifacts.
- One app, many platforms. The guest book (schema-validated form writes, streamed HTML, a hydrated island) is identical everywhere; only the database middleware and the deploy surface change.
- Vite+ canonical. Templates use Vite+ (
vp) for dev, build, tasks, formatting, and linting — except the two Deno templates, which are Deno-native (deno.jsoncholds dependencies and tasks; nopackage.json). - PostgreSQL templates develop against PGlite.
netlify,vercel, anddeno-deploystart a project-local PGlite socket server onvp dev/deno task devand injectDATABASE_URL— no Docker, no local Postgres — while production always points at a real PostgreSQL server through the same migrations and client.
This is a pnpm workspace (the Deno templates opt out — install those with deno install):
vp install
vp run --filter ./railway-node build # build any one templateCI builds every template against @pitlane/dev from npm on pushes and pull requests, and deploy-demo redeploys the live Cloudflare demo whenever the cloudflare template changes.