vercel-labs/launch a subscription store
npx skills add https://github.com/vercel-labs/academy-skills --skill Launch a Subscription Store
Companion skill for the Launch a Subscription Store course. Build a production-ready subscription storefront with Next.js 16, Supabase Auth, and Stripe.
/subscription-store learnStart the guided learning loop. 17 lessons covering authentication, payments, and access control.
/subscription-store newScaffold a new subscription store project:
/subscription-store submitEvaluate your current implementation against the active lesson's outcomes.
https://vercel.com/academy/subscription-store.md → course overview
https://vercel.com/academy/subscription-store/<lesson>.md → lesson content
@supabase/ssrproxy.ts pattern (replaces legacy middleware)| Signal | Lesson area |
|---|---|
| Starter deployed, package.json exists | Setup (1) |
| .env.local with NEXT_PUBLIC_SUPABASE_URL | Supabase config (2-3) |
| app/(auth)/sign-up/page.tsx exists | Auth pages (4) |
| proxy.ts with session handling | Route protection (5) |
| .env.local with STRIPE_SECRET_KEY | Stripe config (6) |
| Pricing page fetching from Supabase | Pricing (7) |
| Checkout Server Action implemented | Checkout flow (8) |
| Subscription management page rendering | Management (9-10) |
| Access control checks in Server Components | Access control (11-14) |
| Error boundaries and loading states | Polish (15) |
| Header with auth-aware navigation | Navigation (16) |
| Deployed to production | Ship (17) |
.env.local frequently — missing keys are the #1 blockerTake vercel-labs/launch a subscription store from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.