Introduction
Welcome to the Pwask documentation. This guide helps you move from prototype to a reliable, secure, and performant production deployment.
What is Pwask?
Pwask is a batteries-included starter for building installable web apps and SaaS:
- Next.js (App Router), Tailwind CSS, TypeScript
- Supabase for auth, database (Postgres), realtime & storage
- PWA support (manifest + service worker)
- Offline-first patterns with IndexedDB sync
- Prebuilt UI: auth, profiles, pricing, docs, newsletter, and more
Quickstart (local dev)
git clone <repo>
pnpm install
cp .env.example .env
# fill .env with local Supabase URL/KEY or use [.env.local](http://_vscodecontentref_/0)
pnpm dev
Visit http://localhost:3000 — sign up or use test credentials to try features.
Production checklist (high level)
- Environment & secrets
- Configure Supabase production project (URL, anon/public and service role keys).
- Configure SMTP / transactional email provider.
- Configure analytics & error monitoring (e.g. Vercel Analytics, Sentry).
- Build & host
- Deploy to Vercel / Netlify / Fly / Cloudflare Pages (see env.md for notes).
- Use the pnpm build command and make sure the Next.js adapted build step runs.
- Security hardening
- Enable RLS policies in Postgres and verify rules with real accounts.
- Rotate service keys and limit where service keys are stored.
- PWA & offline
- Verify manifest and service worker registration on production domain.
- Test installability on Android (Lighthouse / Chrome).
- Backups & observability
- Configure daily database backups and monitor disk/storage usage.
- Add Sentry/Logflare and uptime checks.
- Perf & CDN
- Serve assets from a CDN, enable image optimization and caching headers.
- Run Lighthouse and improve LCP/CLS/TBT as needed.