Starter Kits
Production-ready Rails starter kits wired up with Supabase Auth via supabase-rails — pick the shape that matches your app (API-only, Hotwire monolith, or Inertia + React) and clone.
The starter kits are opinionated Rails 8 applications pre-wired with supabase-rails so you can clone, set two environment variables, and start building features instead of plumbing. Each kit is a real Rails app — not a generator output — so you can read the controllers, layouts, and config to see exactly how supabase-rails is wired into a working app.
The three kits differ only in the shape of the frontend: a JSON API for mobile or SPA clients, a server-rendered Hotwire monolith, or an Inertia-driven React frontend served from the same Rails process. Pick the one that matches the app you want to ship — the Supabase integration is the same underneath.
Compare the kits
| Rails API | Hotwire monolith | Inertia + React | |
|---|---|---|---|
| Rendering model | JSON API — no views, JWT on every request | Server-rendered HTML with Hotwire (Turbo + Stimulus) | Server-driven SPA — Rails controllers return Inertia responses, React renders |
| Frontend stack | None — bring your own mobile or SPA client | ERB + ViewComponent + Tailwind v4 + Railsblocks | React 19 + TypeScript + Vite + shadcn/ui |
supabase-rails mode | :api — JWT verified per request from Authorization: Bearer | :web — encrypted cookie session, no tokens in the client | :web — encrypted cookie session shared with the React layer |
| When to choose it | You're shipping a mobile app or third-party SPA and want Rails to be the JSON backend | You want a productive server-rendered Rails app with real-time UI and no JS build pipeline | You want a typed React frontend without standing up a separate API tier |
| Key dependencies | Rails 8, supabase-rails, rswag, rack-attack, rack-cors, Kamal | Rails 8.1, supabase-rails, ViewComponent, tailwindcss-rails, lucide-rails, Importmap | Rails 8, supabase-rails, inertia_rails, vite_rails, React, shadcn/ui, Kamal |
Pick a kit
Rails API
Rails 8 API-only backend for a mobile or SPA client. JWT-only auth, rswag OpenAPI docs, Rack::Attack rate limiting, and a Kamal deploy config.
Hotwire monolith
Rails 8.1 server-rendered app with Hotwire (Turbo + Stimulus), ViewComponent UI, Tailwind v4, and supabase-rails in :web mode with cookie sessions.
Inertia + React
Full-stack Rails + Inertia + React + TypeScript starter using Vite, shadcn/ui, and supabase-rails for email/password, sign-up, password reset, and magic-link auth.