Skip to main content

Kirimase Review 2026: CLI-Generated SaaS Boilerplate

·StarterPick Team
kirimasesaas-boilerplatenext-jsclicreate-t3-app2026

TL;DR

Kirimase is a CLI tool that generates production-ready Next.js SaaS components on demand — think create-t3-app but with interactive scaffolding for individual features. Run kirimase generate to add a model, scaffold its CRUD API routes, tRPC procedures, and UI components in one command. It's not a boilerplate you buy — it's a code generator you run incrementally. Best for developers who want T3 Stack architecture with less manual scaffolding.

Key Takeaways

  • Type: Free, open source CLI code generator (not a pre-built boilerplate)
  • Stack: Next.js 15, tRPC, Prisma or Drizzle, NextAuth or Clerk, Tailwind + shadcn/ui
  • Core value: kirimase generate scaffolds model + CRUD + tRPC + UI in one command
  • Not included: no pre-built pricing page, subscription billing, landing page, or email system
  • Best for: developers comfortable with T3 Stack who want faster model scaffolding
  • Price: Free (open source)

What Kirimase Does

Kirimase extends the T3 Stack with an interactive CLI that generates code for specific features:

npx kirimase init      # Initialize a new project
npx kirimase add       # Add packages (auth, email, payment, etc.)
npx kirimase generate  # Generate a new model with full CRUD

Tech Stack

Framework:    Next.js 15 (App Router)
API Layer:    tRPC v11
Database:     Prisma or Drizzle (your choice)
Auth:         NextAuth v5 or Clerk
UI:           Tailwind CSS + shadcn/ui
Email:        Resend (optional)
Payment:      Stripe (optional)

The Generate Command (Core Feature)

npx kirimase generate

# Prompts:
# ? Model name: Project
# ? Add fields: name (String), description (String?), status (String)
# ? Generate tRPC router? Yes
# ? Generate UI components? Yes

This generates in one command:

Prisma schema:

model Project {
  id          String   @id @default(cuid())
  name        String
  description String?
  status      String   @default("active")
  userId      String
  createdAt   DateTime @default(now())
  updatedAt   DateTime @updatedAt
  user User @relation(fields: [userId], references: [id], onDelete: Cascade)
}

tRPC router with all CRUD procedures:

export const projectsRouter = router({
  getProjects: protectedProcedure.query(async ({ ctx }) => {
    return ctx.db.project.findMany({ where: { userId: ctx.session.user.id } });
  }),
  createProject: protectedProcedure
    .input(insertProjectSchema)
    .mutation(async ({ input, ctx }) => {
      return ctx.db.project.create({ data: { ...input, userId: ctx.session.user.id } });
    }),
  updateProject: protectedProcedure
    .input(updateProjectSchema)
    .mutation(async ({ input, ctx }) => {
      return ctx.db.project.update({ where: { id: input.id }, data: input });
    }),
  deleteProject: protectedProcedure
    .input(z.object({ id: z.string() }))
    .mutation(async ({ input, ctx }) => {
      return ctx.db.project.delete({ where: { id: input.id } });
    }),
});

UI components: list view page, form component, individual item card.


What's Included vs Missing

Included
T3 Stack foundation (tRPC, Prisma/Drizzle)
shadcn/ui components
Interactive CRUD scaffolding✅ Core feature
Authentication (NextAuth or Clerk)
Stripe integration (via add stripe)
Email (Resend via add resend)
Pre-built pricing/landing page
Subscription billing UI
Admin dashboard
Multi-tenancy

Kirimase vs Alternatives

KirimaseShipFastcreate-t3-app
PriceFree$299Free
TypeCLI generatorPre-built boilerplateStack template
Landing page
Billing UIPartial
Generate command
Best forScaffolding speedComplete SaaSFoundation

Verdict

Use Kirimase if you know T3 Stack and want to skip repetitive CRUD boilerplate — the generate command alone saves hours per model. Skip it if you need a complete SaaS product with landing page and billing UI pre-built — look at ShipFast or Supastarter instead.


Compare Kirimase with other SaaS starters at StarterPick.

Comments