Skip to main content

Seed & Source CLI - Production-ready SaaS scaffolding for Rails, Python, React, Astro, and more

Project description

Seed & Source CLI (sscli)

The unified scaffold tool for the Seed & Source template library. Pick a base, bolt on features, ship faster.

Current Version: v0.6.0 (Architecture Upgrade)
Status: ๐Ÿ”ต RESTRUCTURING COMPLETE โ€” Templates and Tooling now decoupled for peak scalability.

๐ŸŽฏ What is sscli?

sscli is a code-generation CLI that pulls production-ready project templates and injects optional premium modules into them. Every template is a complete, opinionated starting point โ€” not a toy boilerplate.

sscli workflow

  • โœ… Production-ready bases โ€” Rails API, Python SaaS, React, Astro, mobile, and more
  • โœ… Optional feature injection โ€” Commerce, Auth, Admin, Tunnels, and others added at scaffold time
  • โœ… Clean architecture โ€” Hexagonal (Python), standard Rails conventions, functional React
  • โœ… Docker-first โ€” Every template ships with a multi-stage production Dockerfile

๐Ÿ“ฆ Install

# Recommended
pipx install sscli

# Or via pip
pip install sscli

# Verify
sscli --version

๐Ÿš€ Quick Start

# Interactive mode โ€” guided setup with template picker
sscli interactive

# Or go direct
sscli new --template rails-api --name my-api

๐Ÿ—‚๏ธ Templates

Run sscli explore to browse all templates interactively in your terminal.


๐Ÿ›ค๏ธ Rails API ย ยทย  rails-api ย ยทย  FREE

A production-grade JSON API built on Rails 8 โ€” opinionated, deployable on day one.

app/
โ”œโ”€โ”€ controllers/api/v1/   # Versioned JSON endpoints
โ”œโ”€โ”€ models/               # ActiveRecord (PostgreSQL)
โ”œโ”€โ”€ services/             # Business logic layer
โ””โ”€โ”€ serializers/          # JSON serialization

What's in the base:

  • Rails 8.0 + PostgreSQL + Devise (authentication)
  • RSpec test suite + FactoryBot
  • Multi-tenant groundwork (Tenants, API Keys)
  • HMAC webhook validation scaffolding
  • Docker + .env secrets management
  • RuboCop enforced
sscli new --template rails-api --name my-api
โž• Available Features (click to expand)
Flag Tier Description
--with-commerce PRO Shopify / Stripe adapter pattern, webhook infrastructure, commerce models
--with-merchant-dashboard PRO React order & analytics UI โ€” requires --with-commerce
--with-tunnel PRO ngrok local tunnel config for webhook testing
--with-auth PRO Extended authentication flows (JWT, API key management)
--with-landing PRO Injects a companion Astro landing page alongside the API
--with-admin PRO NiceGUI-based admin panel

Commerce example:

sscli new \
  --template rails-api \
  --name shopify-backend \
  --with-commerce \
  --with-tunnel
Request Flow:
Shopify Webhook โ†’ HMAC Validator โ†’ ShopifyAdapter
  โ†’ Provisioning::IssueResource โ†’ CommercialAgreement + SecurityToken

๐Ÿ Python SaaS ย ยทย  python-saas ย ยทย  ALPHA

A Hexagonal Architecture Python service โ€” ports and adapters enforced from project root.

src/
โ”œโ”€โ”€ core/
โ”‚   โ”œโ”€โ”€ entities/          # Pure domain models (no I/O)
โ”‚   โ””โ”€โ”€ use_cases/         # Business logic (depends only on entities)
โ””โ”€โ”€ infrastructure/
    โ”œโ”€โ”€ adapters/          # DB, HTTP, external services
    โ””โ”€โ”€ ui/                # FastAPI / Django routes

What's in the base:

  • Python 3.11+ with FastAPI or Django
  • SQLAlchemy ORM + Pydantic v2 validation
  • ruff + mypy strict mode enforced
  • Multi-tier secrets management (Dotenv, Doppler, Env-only)
  • pytest with coverage gate (target 95% on codemods)
sscli new --template python-saas --name my-service
โž• Available Features (click to expand)
Flag Tier Description
--with-commerce PRO Commerce adapter wired into the hexagonal ports
--with-admin PRO NiceGUI admin panel as a standalone service
--with-sqlite ALPHA Local SQLite persistence via SQLAlchemy + Alembic (dev/test)
--with-ingestor PRO Data Ingestor adapter pattern for raw data normalization
--with-tunnel PRO ngrok tunnel config for local webhook testing
--with-auth PRO Authentication flows injected into the use case layer
sscli new \
  --template python-saas \
  --name data-service \
  --with-ingestor \
  --with-sqlite

๐ŸŒ Static Landing ย ยทย  static-landing ย ยทย  ALPHA

An Astro-powered static site built for SaaS marketing pages โ€” multi-theme, blueprint-driven.

src/
โ”œโ”€โ”€ components/   # Astro/React island components
โ”œโ”€โ”€ pages/        # File-based routing
โ””โ”€โ”€ content/      # Markdown + JSON content layer
blueprint.json    # Content & theme configuration file

What's in the base:

  • Astro 5.0 + Tailwind CSS
  • Multi-theme system (Emerging Emerald, Midnight Azure, Crimson Bloom, Vibrant Amber)
  • blueprint.json manifest for content/theme customization
  • Static build โ†’ Nginx Docker image
  • Playwright smoke tests
sscli new --template static-landing --name my-landing

# With custom content & theme
sscli new \
  --template static-landing \
  --name my-landing \
  --content ./my-blueprint.json \
  --theme midnight
โž• Available Features (click to expand)
Flag Tier Description
--with-commerce PRO Storefront components (cart, product, checkout UI)
--with-auth PRO Auth-gated page sections

โš›๏ธ React Client ย ยทย  react-client ย ยทย  ALPHA

A React 18 + Vite frontend with the full modern stack, ready to connect to any of the backend templates.

src/
โ”œโ”€โ”€ components/   # Functional components only
โ”œโ”€โ”€ hooks/        # Custom hooks for all business logic
โ”œโ”€โ”€ pages/        # Route-level components
โ””โ”€โ”€ api/          # React Query client bindings

What's in the base:

  • React 18 + Vite + TypeScript
  • React Query for server state
  • Tailwind CSS
  • ESLint + Prettier strict mode
  • Jest + Playwright
sscli new --template react-client --name my-frontend
โž• Available Features (click to expand)
Flag Tier Description
--with-commerce PRO Commerce UI components (cart, order flow)
--with-merchant-dashboard PRO Full merchant dashboard โ€” orders, analytics, settings. Requires --with-commerce
--with-auth PRO Auth flows integrated with React Query
sscli new \
  --template react-client \
  --name merchant-ui \
  --with-commerce \
  --with-merchant-dashboard

๐Ÿ“Š Data Pipeline ย ยทย  data-pipeline ย ยทย  ALPHA

A dbt + Python data stack for SaaS analytics and data transformation pipelines.

sscli new --template data-pipeline --name my-pipeline
What's included (click to expand)
  • dbt Core with modular transformation layers (staging โ†’ marts)
  • Python ingestion scripts
  • Docker orchestration
  • Pre-configured profiles for PostgreSQL / BigQuery

๐Ÿ“ฑ Mobile ย ยทย  ALPHA

Template Stack Command
mobile-android Kotlin + Jetpack Compose sscli new --template mobile-android --name my-app
mobile-ios Swift + SwiftUI sscli new --template mobile-ios --name my-app

๐Ÿ—๏ธ Infrastructure ย ยทย  ALPHA

Template Stack Command
terraform-infra Terraform multi-cloud IaC sscli new --template terraform-infra --name my-infra
wiring Docker Compose multi-service orchestration sscli new --template wiring --name my-stack

๐Ÿ”ง CLI Reference

Command Description
sscli new Scaffold a new project from a template
sscli setup Run setup scripts for templates
sscli interactive animated Guided interactive setup with a robust animated experience
sscli explore Browse all templates in an interactive tree view
sscli verify Verify template integrity and run smoke tests
sscli health Check configuration and template health
sscli validate Run smoke test suite against a template
sscli upgrade Upgrade a generated project to a newer template version using AST
sscli auth login Authenticate with GitHub to unlock ALPHA/PRO templates
sscli whoami Show current authenticated user and license tier
sscli logout Clear local credentials
sscli obs diff 3-way diff between base template and current code
sscli obs workspace Manage feature isolation workspaces

Feature Flags for sscli new

Flag Templates Tier
--with-commerce rails-api, python-saas, react-client, static-landing PRO
--with-merchant-dashboard react-client PRO
--with-auth rails-api, python-saas, react-client, static-landing PRO
--with-admin rails-api, python-saas PRO
--with-tunnel rails-api, python-saas PRO
--with-landing rails-api, python-saas PRO
--with-ingestor python-saas PRO
--with-sqlite python-saas ALPHA
--secrets <strategy> all FREE
--use-ast-injection all (where supported) ALPHA
--content <file> static-landing ALPHA
--theme <name> static-landing ALPHA
--dry-run all FREE
--json all FREE

๐Ÿ”„ Updates

pipx upgrade sscli
# or
pip install --upgrade sscli

โ“ Troubleshooting

Command not found after install
sscli --version

# If missing, reinstall via pipx
pipx uninstall sscli
pipx install sscli
Template not generating correctly
# Check template integrity first
sscli verify --template rails-api

# Preview without writing files
sscli new --template rails-api --name test --dry-run

๐Ÿ“ž Support


๐Ÿ“„ License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sscli-2.6.6-py3-none-any.whl (162.0 kB view details)

Uploaded Python 3

File details

Details for the file sscli-2.6.6-py3-none-any.whl.

File metadata

  • Download URL: sscli-2.6.6-py3-none-any.whl
  • Upload date:
  • Size: 162.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for sscli-2.6.6-py3-none-any.whl
Algorithm Hash digest
SHA256 80b17651fa9c33f986ac0499f0ca98493aefcb5d2d4936c7fba6234bcd852eca
MD5 036a0d657e316356eb70dc43afb84134
BLAKE2b-256 b2ffc319784e5012e3ad849317cf16d178417c225783ab5585484bc7f7910ce3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page