Deploy hopeful-wonder
Deploy and Host hopeful-wonder with Railway
nextjs-saas-starter
Just deployed
Deploy and Host Next.js SaaS Starter on Railway
A production-ready SaaS starter with authentication, multi-tenant organizations, Stripe billing, and a dashboard — ready to deploy in one click. Built with Next.js 15, Supabase, and Tailwind CSS.
About Hosting Next.js SaaS Starter
This template deploys a complete SaaS application on Railway using Nixpacks for zero-config Node.js detection. The app connects to your Supabase project for authentication (email/password + GitHub OAuth) and database, and to Stripe for subscription billing via the Customer Portal. Railway handles the build, deploy, and hosting automatically — just add your environment variables and you're live. The template includes a railway.toml with restart policies and health checks pre-configured.
Common Use Cases
- Launch a SaaS product with auth, billing, and team management out of the box
- Prototype a multi-tenant B2B application with role-based access (owner/admin/member)
- Start a subscription business with Stripe integration and customer self-service billing
- Build an internal tool with a polished dashboard, KPI cards, and activity feeds
- Use as a foundation for any Next.js project that needs auth + payments + deploy
What's Included
- Email/password + GitHub OAuth authentication via Supabase
- Multi-tenant organizations with invite flow and role management
- Stripe Customer Portal for subscription management
- 3-step onboarding wizard
- Dashboard with KPI cards and activity feed
- Dark mode support
- Mobile-responsive sidebar layout
- Supabase schema with RLS policies included (ready to run)
Why Deploy on Railway
Railway provides instant deployments with zero DevOps overhead. Your SaaS starter gets automatic SSL, custom domains, built-in logging, and restart-on-failure policies — all without writing a single line of infrastructure code. Combined with Supabase for auth/database and Stripe for billing, you get a production-grade stack running in minutes instead of days.
Dependencies for
This template requires accounts on two external services (both have generous free tiers):
- Supabase — handles authentication and database (free tier: 50K monthly active users, 500MB database)
- Stripe — handles subscription billing (no monthly fee, pay-per-transaction only)
Deployment Dependencies
- Node.js 18+ — detected and installed automatically by Railway's build system
- npm — package manager, runs
npm install && npm run buildduring deploy - Supabase project — create one at supabase.com and run the included
supabase/schema.sql - Stripe account — create one at stripe.com for billing portal functionality
Built with patterns from Penguin Alley — the platform where anyone turns ideas into apps.
Template Content
nextjs-saas-starter
GerardoRdz96/nextjs-saas-starterSTRIPE_SECRET_KEY
Your Stripe secret key (sk_live_... or sk_test_...)
NEXT_PUBLIC_APP_URL
Set to ${{RAILWAY_PUBLIC_DOMAIN}} — Railway fills this automatically
STRIPE_WEBHOOK_SECRET
Stripe webhook signing secret (whsec_...)
STRIPE_PUBLISHABLE_KEY
Your Stripe publishable key (pk_live_... or pk_test_...)
NEXT_PUBLIC_SUPABASE_URL
Your Supabase project URL (from Project Settings → API)
SUPABASE_SERVICE_ROLE_KEY
Your Supabase service role key (keep secret)
NEXT_PUBLIC_SUPABASE_ANON_KEY
Your Supabase anon/public key