The Update + Next.js Template is a full-stack SaaS starter that combines Next.js's App Router with Update's authentication and entitlements, Supabase auth, and Stripe billing, giving developers a working subscription product base instead of a blank slate.
What is the Update + Next.js Template?
The Update + Next.js Template is a production-oriented boilerplate from Update (update.dev) that wires together Next.js, Supabase, and Stripe into one application. It takes API keys from the Update dashboard and Supabase project settings as input and produces a runnable web app with sign-in, subscription checkout, customer portal, and plan-based access control. The project is published on GitHub under the MIT license and is designed to be deployed to Vercel with a single click.
Key Features
- Stripe Subscriptions — Full billing loop including checkout sessions, customer portal, free trials, and failed payment recovery so subscribers can manage their own plans.
- Supabase Authentication — Uses Supabase as the auth backend, with Update-powered extensions such as magic links and redirects layered on top.
- Entitlements System — Access control checked by plan, organization, or user role, with an example call to
client.entitlements.check()that conditionally renders UI for authorized users. - Full-Stack Code Structure — Includes
utils/update/client.tsfor browser-side usage andutils/update/server.tsfor server-side usage, so the same template works in the App Router, Middleware, Client, and Server contexts. - Tailwind CSS and shadcn/ui — The interface is styled with Tailwind CSS and assembled from shadcn/ui components, giving you accessible, customizable React components out of the box.
- One-Click Vercel Deployment — A Deploy to Vercel button clones the repo and lets you set up Update and Supabase environment variables immediately.
- Subscription Management Actions — Cancel and reactivate subscriptions through the Stripe Customer Portal, with usage-based plans listed as coming soon.
Who is it for?
SaaS founders who want a working subscription and auth setup without building it from scratch; Next.js developers who need a reference implementation of Update client/server utilities and entitlements; product teams that require plan-based, org-based, or role-based access control from day one.
What can you do with the template?
- Launch a subscription product quickly: Deploy to Vercel, add your Stripe and Supabase keys, and have checkout, trials, and a customer portal live.
- Implement conditional UI by plan: Use the included entitlements example to show premium features only to users on certain plans, orgs, or roles.
- Experiment with Update + Stripe integration: Study how
utils/update/client.tsandutils/update/server.tswork together before customizing your own billing and auth flows.
How does the template work?
Set up locally by cloning the repository, running npm install, and copying .env.example to .env.local. Fill in the public key from the Update dashboard and the Supabase URL and anon key from Supabase project settings, then run npm run dev to view the app at localhost:3000. The Vercel deploy flow automates the same environment configuration.
FAQ
Is the Update + Next.js Template free?
Yes. The repository is released under the MIT license, so you can use it commercially and modify it freely. You will still need your own accounts for the third-party services it relies on: Update, Supabase, and Stripe.
What do I need to configure before running the template?
You need three environment variables: NEXT_PUBLIC_UPDATE_PUBLIC_KEY from the Update dashboard, and NEXT_PUBLIC_SUPABASE_URL plus NEXT_PUBLIC_SUPABASE_ANON_KEY from your Supabase project's API settings. Without these, authentication and billing will not work.
Does the template include usage-based billing?
Not yet. The README lists usage-based plans as coming soon. The current Stripe integration covers subscriptions, checkout, trials, failed payment recovery, and cancel/reactivate flows through the customer portal.
Which pages or components are included?
The README highlights the Update client setup, entitlements checks, and Stripe billing integration rather than a full page inventory. The template is a full-stack SaaS starter, so it includes the routing, middleware, and UI components needed to support auth and billing flows.
Can I deploy this template without using Vercel?
The template is Next.js-based, so it can be deployed to any platform that supports Next.js, but the provided one-click deploy button targets Vercel. The local development flow is the same on any machine with Node.js and npm installed.








