Next.js 16 + Tailwind v4 + shadcn/uiSupabase env configured

Membase

Membership platform for Chambers of Commerce. Create your organization space, then invite member companies on your subdomain (for example toronto.lvh.me locally).

Local multi-tenant dev
Use lvh.me so subdomains resolve to 127.0.0.1.

Apex: http://lvh.me:3000

Tenant: http://toronto.lvh.me:3000

Set `NEXT_PUBLIC_ROOT_DOMAIN=lvh.me` in `.env.local` (default).

Supabase app config
The app reads browser-safe Supabase values from public environment variables.

Status: Ready for local app integrations

Copy the local Supabase URL and publishable key from the CLI output into `.env.local`.

Testing workflow
New feature work should follow TDD with fast unit coverage and a smoke path in Playwright.

`vp test` for unit and integration tests.

`vp run test:e2e` for browser smoke coverage.

`vp check` before pushing a branch.

Deployment targets
Production lives behind pull requests into `main`.

Host: Vercel

Database: Supabase Postgres

Auth: Supabase Auth

File storage: Supabase Storage (S3-compatible objects)