Skill

scaffold

Generate boilerplate for common SaaS patterns. Supports crud, dashboard-page, settings-section, billing-page, admin-panel, landing-page, auth-pages, onboarding-flow.

From saas-toolkit
Install
1
Run in your terminal
$
npx claudepluginhub mickaelmamani/saas-toolkit --plugin saas-toolkit
Tool Access

This skill is limited to using the following tools:

ReadWriteEditGrepGlobBashmcp__supabase
Skill Content

/scaffold — Quick SaaS Pattern Scaffolding

Generates common SaaS patterns adapted to the project's existing conventions.

Usage

/scaffold [pattern] [options]

Patterns

crud [resource]

Full CRUD for a resource (e.g., /scaffold crud projects).

Generates:

  • Migrationsupabase/migrations/[timestamp]_create_[resource].sql with table, RLS policies, indexes
  • Types — Update generated types or add manual type for the resource
  • Server Actionssrc/app/(protected)/[resource]/actions.ts with create, read, update, delete
  • List pagesrc/app/(protected)/[resource]/page.tsx with data table
  • Detail pagesrc/app/(protected)/[resource]/[id]/page.tsx
  • Create formsrc/app/(protected)/[resource]/new/page.tsx with zod validation
  • Edit formsrc/app/(protected)/[resource]/[id]/edit/page.tsx

The resource is org-scoped by default (uses org_id FK). Add --user-scoped for user-level resources.

billing

Stripe billing pages.

Generates:

  • Pricing pagesrc/app/pricing/page.tsx with plan cards and checkout buttons
  • Billing managementsrc/app/(protected)/settings/billing/page.tsx with current plan, portal link
  • Checkout actionsrc/app/(protected)/settings/billing/actions.ts with createCheckoutSession, createPortalSession

dashboard

Dashboard layout and navigation.

Generates:

  • Dashboard layoutsrc/app/(protected)/layout.tsx with sidebar + header
  • Sidebarsrc/components/sidebar.tsx with nav links
  • Headersrc/components/header.tsx with user menu
  • Dashboard homesrc/app/(protected)/dashboard/page.tsx with summary cards

settings

Settings pages.

Generates:

  • Settings layoutsrc/app/(protected)/settings/layout.tsx with tab navigation
  • Profile settingssrc/app/(protected)/settings/profile/page.tsx
  • Billing settingssrc/app/(protected)/settings/billing/page.tsx
  • Team settingssrc/app/(protected)/settings/team/page.tsx with member list, invite form

landing

Marketing landing page.

Generates:

  • Hero sectionsrc/components/landing/hero.tsx
  • Features sectionsrc/components/landing/features.tsx
  • Pricing CTAsrc/components/landing/pricing-cta.tsx
  • Footersrc/components/landing/footer.tsx
  • Landing pagesrc/app/page.tsx composing all sections

admin-panel

Admin layout with user management.

Generates:

  • Admin layoutsrc/app/(protected)/admin/layout.tsx with admin nav
  • Users listsrc/app/(protected)/admin/users/page.tsx with data table
  • Subscriptionssrc/app/(protected)/admin/subscriptions/page.tsx
  • Impersonation — helper to view as specific user (read-only)

auth-pages

Complete authentication pages.

Generates:

  • Loginsrc/app/(auth)/login/page.tsx with email/password + OAuth buttons
  • Signupsrc/app/(auth)/signup/page.tsx with form + validation
  • Forgot passwordsrc/app/(auth)/forgot-password/page.tsx
  • Reset passwordsrc/app/(auth)/reset-password/page.tsx
  • OAuth callbacksrc/app/auth/callback/route.ts

onboarding-flow

Multi-step onboarding wizard.

Generates:

  • Onboarding layoutsrc/app/(protected)/onboarding/layout.tsx with progress bar
  • Step 1: Profilesrc/app/(protected)/onboarding/profile/page.tsx
  • Step 2: Teamsrc/app/(protected)/onboarding/team/page.tsx
  • Step 3: Plansrc/app/(protected)/onboarding/plan/page.tsx
  • Actionssrc/app/(protected)/onboarding/actions.ts

Adaptation Rules

Before generating any files:

  1. Read existing patterns — Glob for similar files to discover naming conventions, component patterns, and data fetching approaches
  2. Adapt to conventions — Match the project's existing style (import paths, component structure, styling approach)
  3. Use existing components — If the project already has a Button, Card, Table, etc., use those instead of creating new ones
  4. Follow existing auth patterns — Use the project's Supabase client creation pattern

Output

After scaffolding, report:

  • List of files created
  • Any manual steps needed (e.g., "add nav link to sidebar", "run migration")
  • Suggested next steps

Rules

  • Always read existing project files first to match conventions
  • Use shadcn/ui components if available in the project
  • All database tables must have RLS enabled
  • Use Server Actions for mutations, not API routes
  • Use @supabase/ssr patterns for all Supabase client creation
  • Do not overwrite existing files — warn and skip if a file already exists
Similar Skills
cache-components

Expert guidance for Next.js Cache Components and Partial Prerendering (PPR). **PROACTIVE ACTIVATION**: Use this skill automatically when working in Next.js projects that have `cacheComponents: true` in their next.config.ts/next.config.js. When this config is detected, proactively apply Cache Components patterns and best practices to all React Server Component implementations. **DETECTION**: At the start of a session in a Next.js project, check for `cacheComponents: true` in next.config. If enabled, this skill's patterns should guide all component authoring, data fetching, and caching decisions. **USE CASES**: Implementing 'use cache' directive, configuring cache lifetimes with cacheLife(), tagging cached data with cacheTag(), invalidating caches with updateTag()/revalidateTag(), optimizing static vs dynamic content boundaries, debugging cache issues, and reviewing Cache Component implementations.

138.5k
Stats
Parent Repo Stars0
Parent Repo Forks0
Last CommitFeb 11, 2026