A Next.js + Supabase web app that bundles multiple AI tools (chat, image generation, background removal, document chat, YouTube summarizer, and more) behind a single subscription. Production site: aibreezy.com.
- Framework: Next.js 15 (App Router, standalone output)
- Auth & DB: Supabase (SSR cookies via
@supabase/ssr) - Payments: Stripe (subscriptions + top-ups)
- AI providers: OpenAI, Anthropic, Replicate, Perplexity (via
aiSDK) - Analytics: PostHog, Google Analytics 4
- Errors: Sentry
- UI: Tailwind CSS + shadcn/ui + Radix
- Hosting: Coolify (Docker image built in GitHub Actions, pushed to GHCR)
- Clone and install:
npm install
- Create
.env.localwith the keys defined insrc/env.ts(Supabase URL/keys, Stripe keys, AI provider keys, Sentry DSN, PostHog, GA, Stripe price IDs). - Run the dev server:
App runs at localhost:3000.
npm run dev
npm run build && npm startSet SKIP_ENV_VALIDATION=true to build without runtime env vars (used by the Docker build).
Pushes to main trigger .github/workflows/docker-build.yml, which builds the Docker image, pushes it to GHCR, and pings a Coolify webhook to deploy.