create-rigging
v0.2.0
Published
Scaffold a new Rigging DDD project (Bun + Elysia + BetterAuth + Drizzle)
Downloads
17
Readme
create-rigging
Opinionated DDD bootstrap — Scaffold a new Rigging project with a hardened foundation in seconds.
create-rigging is the official CLI tool for bootstrapping new projects using the Rigging architecture. It provides a complete, production-ready foundation including domain-driven design boundaries, dual-track authentication, and v1.3 hardening features.
Part of the Rigging monorepo.
Usage
Create a new project by running:
npx create-rigging <project-name>Quick Start
After scaffolding, follow these steps to get your project running:
- Initialize:
cd <project-name> bun install - Configure:
cp .env.example .env # Start required infrastructure (PostgreSQL, Redis) docker compose up -d - Verify:
bun test
What's Included
The generated project is derived directly from the Rigging src/ directory, ensuring you get the exact same production-tested patterns used in the reference implementation.
Core Stack
- Runtime: Bun 1.3+ (High-performance JS/TS runtime)
- Framework: ElysiaJS (Ergonomic web framework for Bun)
- Auth: BetterAuth with dual-track identity (Session cookies + API Keys)
- ORM: Drizzle with PostgreSQL
- Architecture: Domain-Driven Design (DDD) with strictly enforced boundaries (
Domain,Application,Infrastructure,Presentation).
v1.3 Hardening Features
The scaffold includes all production-grade features from the Rigging v1.3 milestone:
- Resend Email Adapter: Ready-to-use email integration for production delivery.
- Redis Rate Limiting: Persistent rate-limit storage and session management.
- OpenTelemetry: Pre-configured OTLP tracing and observability.
- AuthContext Rails: Every domain service requires an
AuthContextat the type level, preventing accidental data leaks.
Testing
The generated project includes a comprehensive, multi-layer testing suite:
- Unit: Test domain logic and pure functions.
- Integration: Validate database interactions and module wiring.
- E2E: Full flow validation (e.g., Auth sign-up → API Key creation → Authenticated Request).
- Contract: Ensure schema and framework boundaries remain intact.
Run tests using:
bun testLicense
MIT
