A link-in-bio app built with TanStack Start, Better Auth, Drizzle ORM, and Cloudflare Workers (D1 + R2).
pnpm install
pnpm dev| Command | Description |
|---|---|
pnpm dev |
Start dev server on port 3000 |
pnpm build |
Production build |
pnpm check |
Format check |
pnpm lint |
Lint |
pnpm deploy |
Build and deploy to Cloudflare Workers |
pnpm db:migrate:local |
Apply D1 migrations locally |
pnpm db:migrate:remote |
Apply D1 migrations to production |
src/routes/— TanStack Router file routes (thin wrappers)src/pages/— Page components and route optionssrc/components/— UI and form componentssrc/lib/— Server functions, auth, schemas, utilitiesdrizzle/— Database migrations
Avatars and banners are stored in an R2 bucket (profiles-media) and served through /api/images/users/{userId}/{kind}.
Requires Wrangler authentication and secrets:
pnpm auth:secret # Set BETTER_AUTH_SECRET
pnpm deploySee wrangler.jsonc for D1 and R2 bindings.