📚 Drizzle ORM - lightweight ORM compatible with Cloudflare D1 and drizzle-kit to manage schema migrations
👤 OAuth Lucia - Google oAuth sign-in and/or email signup via Resend mailer api, with 4 email templates: reset password, change email, verify email, welcome. Settings and admin panel for users.
☁️ Cloudflare for Svelte - serverless autoscaling API and D1 database, great hosting platform with free tier
🖼️ SvelteKit - full stack interface and API routes framework. Many developers prefer Svelte over React.
🎨 Tailwind CSS + Bits UI + shadcn-svelte - popular UI components, with lucide icons and demos like Sidebar and Magic UI Animations
📝 formsnap + sveltekit-superforms with zod validation and rate-limiting in server memory
🛣️ vite-plugin-kit-routes - url routes
🌲 pino - logging
✅ Vitest - unit testing web UI
⭐ Extras & Alternatives: List of Svelte Libraries, Material UI, SkeletonUI, Flowbite, Icon sets
📦Easy to switch in alternative packagages, such as running on AWS, GCE, Azure with Docker. Change Drizzle setup to connect to any db like Supabase, and add popular platform APIs with Lucia.
curl -fsSL https://bun.sh/install | bash
. Optional: Setup shell with dev tools like nvim, fish, system info with Server-Shell-Setupgit clone https://github.com/vtempest/svelte-docs-starter
..
when on the Github repo page to fork and run in Github Workspaces.cd svelte-docs-starter
.bun install
.mv .env.example .env ; mv wrangler.example.toml wrangler.toml
and set the domain and API keys in .env
.http://localhost
and http://localhost:5173
on local or https://domain.com
on server.http://localhost:5173/auth/oauth/google/callback
or https://api.domain.com/auth/oauth/google/callback
.bunx wrangler login
.bunx wrangler d1 create my-db-prod
.wrangler.toml
and change database_name
and database_id
.drizzle.config.ts
and change db name in dbName
.package.json
and change db name in db:push:*
and db:backup:prod
.bun run db:migrate; bun run db:push:dev; bun run db:push:prod
.bun dev
.bun serve
.app.html
.