Skip to content

rubymignot/create-shipstack

Repository files navigation

create-shipstack

Ship your SaaS or marketing site faster with a production-ready Next.js 15 stack.

Made by Ruby Mignot

Quick Start

npx create-shipstack@latest
cd your-project-name
npm install
npm run dev

What You Get

A complete full-stack foundation designed for modern SaaS and marketing sites:

  • Next.js 15 with App Router + Turbo
  • TypeScript strict mode
  • tRPC for type-safe APIs
  • Prisma ORM with PostgreSQL
  • Auth.js authentication (optional)
  • Tailwind CSS 4 with modular shadcn/ui packages
  • Docker + Nginx production deployment
  • Cloudflare compatible
  • PostHog analytics (optional)
  • SMTP email (optional)
  • Stripe billing integration (optional)

What's New in v1.2

🎨 Tailwind CSS 4: Modern @import "tailwindcss" syntax, improved performance
📦 Modular Components: Choose only the shadcn/ui packages you need
Optimized Dependencies: Smaller bundles, only install what you use
🚀 Procedural Generation: Everything generated via CLI, no file copying

Component Packages

Choose from 10 modular shadcn/ui packages:

  • Forms: Input, textarea, checkbox, select, radio-group, switch, label, form validation
  • Buttons: Button, toggle, button groups with all variants
  • Navigation: Navigation menu, menubar, breadcrumb, pagination, tabs
  • Overlays: Dialog, drawer, sheet, alert-dialog, popover, tooltip, hover-card
  • Menus: Dropdown menu, context menu, command palette
  • Data Display: Table, card, badge, avatar, separator, kbd, empty states
  • Feedback: Alert, progress, spinner, skeleton, toast notifications
  • Layout: Resizable panels, scroll-area, sidebar, collapsible, accordion
  • Date & Time: Calendar picker with date-fns
  • Data Visualization: Charts (recharts), carousel

Project Structure

my-app/
├─ src/
│  ├─ app/              # Next.js App Router
│  ├─ server/           # tRPC + Auth.js + DB client
│  ├─ lib/              # Utilities
│  ├─ components/       # shadcn/ui (selected packages)
│  ├─ hooks/            # React hooks
│  ├─ styles/           # Tailwind 4 CSS
│  ├─ env.ts            # Type-safe env validation
│  └─ middleware.ts     # PostHog proxy + CF headers
├─ prisma/              # Database schema
├─ docker/              # App Dockerfile
├─ deploy/nginx/        # Nginx config + Dockerfile
└─ docker-compose.yaml  # Standard & Coolify variants

Configuration

  • TypeScript with strict mode
  • ESLint v9 flat config for Next.js
  • Prettier with Tailwind plugin
  • Tailwind CSS 4 with @tailwindcss/postcss
  • Modular shadcn/ui components

Wizard Options

  1. Project Basics: Name, template (SaaS/Marketing)
  2. Auth: Auth.js with Cognito/Email/Credentials
  3. Database: PostgreSQL or schema-only mode
  4. API: tRPC with SuperJSON option
  5. Analytics: PostHog (EU/US region)
  6. Email: SMTP with test script
  7. Billing: Stripe integration
  8. Component Packages: Select shadcn/ui packages

Docker Deployment

Two Docker Compose variants:

  • Standard: Nginx on port 80, app internal
  • Coolify: Platform-managed configuration

Features:

  • Two-stage build for minimal image size
  • Node 22 Alpine base
  • Health checks for both services
  • Cloudflare real IP extraction
  • Brotli compression in Nginx

Development

# Install dependencies
npm install

# Build the CLI
npm run build

# Run in development mode
npm run dev

# Type check
npm run typecheck

# Lint
npm run lint

Requirements

  • Node.js 22+
  • npm (other package managers not yet supported)

Generated Project Commands

npm run dev          # Start dev server (with Turbo if enabled)
npm run build        # Build for production
npm run start        # Start production server
npm run lint         # Run ESLint
npm run typecheck    # Run TypeScript checks
npm run db:push      # Push Prisma schema
npm run db:migrate   # Create migration
npm run smtp:test    # Test SMTP (if enabled)

Environment Variables

The CLI generates a comprehensive .env.example with all required variables:

  • Core: NODE_ENV, NEXT_PUBLIC_URL
  • Auth: AUTH_SECRET, COGNITO_*
  • Database: DATABASE_URL, DIRECT_URL
  • Analytics: NEXT_PUBLIC_POSTHOG_*
  • Email: SMTP_*
  • Stripe: STRIPE_* (if enabled)

License

MIT


Made by Ruby Mignot

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published