The future of project scaffolding — production-ready, secure, and intelligent
A next-generation CLI that transforms how developers create, maintain, and distribute modern applications. From curated full-stack templates to intelligent project migrations, Peezy CLI delivers enterprise-grade tooling with developer-first experience.
Production-ready templates that save hours of setup:
- nextjs-fullstack - Complete Next.js app with auth, database, and modern UI
- express-fullstack - Express + React full-stack with shared authentication
- react-spa-advanced - Modern React SPA with state management and testing
Intelligent project migration with conflict resolution:
- Template diffing - Compare your project with newer templates
- Interactive conflicts - Choose how to handle customized files
- Automatic backups - Never lose your work during updates
- Preview mode - See changes before applying them
Install anywhere, instantly:
- Homebrew (macOS/Linux) - brew install Sehnya/peezy/peezy
- Scoop (Windows) - scoop install peezy
- Universal installer - curl -fsSL https://get.peezy.dev | bash
- Standalone binaries - No Node.js required
Enterprise-grade security framework ready for production:
- Security framework - Complete trust and verification system
- Template verification - All templates verified before use
- Trust policies - Configure security requirements for your team
- Audit system - Comprehensive security reporting
- Sigstore ready - Full keyless signing in v1.0.1 (currently using development signatures)
- Zero-network scaffolding — All templates embedded, works offline
- Interactive prompts — Smart defaults with enhanced guidance
- JSON output — Machine-consumable for automation and CI/CD
- Cross-platform — macOS, Linux, Windows with native binaries
- Deterministic builds — Reproducible projects with lock files
- File integrity — SHA256 verification for all generated files
- Template system — Local and remote templates with versioning
- Health monitoring — Comprehensive project diagnostics
- Security first — Sigstore integration with transparency logs
- Migration system — Safe updates with intelligent conflict resolution
- Multi-platform — Native binaries for all major platforms
- Automation friendly — Complete JSON API for CI/CD integration
All commands support the --json flag for machine-consumable output with consistent format:
- -p, --pm <pm> - Package manager (bun|npm|pnpm|yarn)
- --no-install - Skip dependency installation
- --no-git - Skip git initialization
- --databases <list> - Comma-separated databases (postgresql,mysql,sqlite,mongodb)
- --redis - Include Redis for caching/sessions
- --search - Include Elasticsearch for search functionality
- --orm <orm> - ORM to configure (prisma|drizzle|both)
- --volumes <type> - Volume configuration (preconfigured|custom)
- Next.js 14 with App Router and TypeScript
- Authentication with NextAuth.js and multiple providers
- Database with PostgreSQL and Drizzle ORM
- Modern UI with Tailwind CSS and Headless UI
- Production-ready with proper error handling and security
- Express.js backend with TypeScript and REST API
- React frontend with Vite and modern tooling
- Shared authentication with JWT tokens
- Database integration with Drizzle ORM
- Concurrent development setup for seamless workflow
- Advanced React SPA with all modern features
- State management with Zustand
- Data fetching with TanStack Query
- Routing with React Router v6
- Testing with Vitest and Testing Library
- Animations with Framer Motion
- nextjs-app-router - Next.js 14 + App Router + TypeScript + Tailwind
- bun-react-tailwind - Bun + React + Vite + Tailwind CSS
- vite-vue-tailwind - Vue + Vite + Tailwind CSS
- express-typescript - Express.js + TypeScript + REST API
- flask - Python Flask API/App
- fastapi - Python FastAPI with modern features
- flask-bun-hybrid - Flask backend + Bun frontend
Remote templates are fetched from registries and cached locally. They support versioning and scoped naming.
See REMOTE_TEMPLATES.md for detailed documentation.
Peezy includes a simple typed env workflow:
- peezy env check — validates .env against .env.example
- peezy env diff — shows missing/extra keys
- peezy env generate --schema schema.json — creates .env.example from a JSON schema:
Example schema.json:
Use peezy check-versions to see latest versions or security advisories.
Examples:
peezy doctor checks your environment and project for common pitfalls:
- Node/Bun/Python presence and versions
- .env vs .env.example parity
- TypeScript typecheck (if tsconfig.json exists)
- Port availability (defaults: 3000, 5173, 8000)
Options:
- --ports 3000,5173,8000
- --fix-lint — attempt lint autofix via npm script
- --fix-env-examples — create minimal .env.example if missing
Add a peezy.config.js to extend prompts or run hooks after scaffold:
Note: Plugin support is experimental and API may change.
Peezy CLI automatically generates production-ready database configurations with Docker Compose services, environment variables, and initialization scripts.
- PostgreSQL - Production-ready with connection pooling and health checks
- MySQL - Optimized configuration with UTF8MB4 support
- SQLite - Lightweight option for development and small applications
- MongoDB - Document database with replica set support
- Redis - Caching and session storage with persistence
- Elasticsearch - Full-text search and analytics
- Prisma - Type-safe database client with migrations and introspection
- Drizzle - Lightweight TypeScript ORM with SQL-like syntax
- Both - Configure both ORMs for flexibility and comparison
- Preconfigured volumes - Ready-to-use bind mounts in ./volumes directory
- Custom volumes - Named Docker volumes for production deployments
- Persistent storage - Data survives container restarts and rebuilds
- Environment variables - Automatically populated .env files
- Docker Compose services - Production-ready containers with health checks
- Database initialization scripts - SQL scripts for schema setup
- Connection configuration - Database clients and connection pooling
- Documentation - Complete setup and troubleshooting guides
Every scaffolded project includes a comprehensive lock file with:
- Template metadata - exact name, version, and source information
- File checksums - SHA256 hashes for all generated files
- Build options - CLI flags and interactive prompt answers
- Creation timestamp - when the project was created
- Schema validation - JSON schema for lock file format
- Automatic checksum generation for all project files
- Excludes build artifacts and dependencies (node_modules, dist, etc.)
- Detects missing, modified, or extra files
- Supports checksum updates for legitimate changes
All templates include:
- README with setup instructions and project-specific documentation
- Pre-configured build tools optimized for each framework
- Tailwind CSS integration (frontend templates) with custom configurations
- Environment variable support with .env.example files
- Package manager integration supporting Bun, npm, pnpm, and yarn
- Git initialization with appropriate .gitignore files
- Development server setup with hot reload and modern tooling
- peezy.lock.json for deterministic reproduction
- TypeScript configuration where applicable
- Node.js 20.19.0 or higher (required for Vite 6 and modern ESM support)
- Git (optional, for repository initialization and version control)
- Python 3.10+ (for Python templates, 3.8-3.9 are EOL)
- Bun (optional, for Bun-specific templates and faster package management)
- Bun (recommended for speed and modern features)
- npm (Node.js default, widely supported)
- pnpm (efficient disk usage and fast installs)
- yarn (classic and berry versions supported)
- macOS (Intel and Apple Silicon)
- Linux (Ubuntu, Debian, CentOS, Alpine)
- Windows (native and WSL2)
All platforms support the full feature set including deterministic builds and JSON output.
- Fork the repository
- Create your feature branch (git checkout -b feature/amazing-feature)
- Commit your changes (git commit -m 'Add some amazing feature')
- Push to the branch (git push origin feature/amazing-feature)
- Open a Pull Request
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create your feature branch (git checkout -b feature/amazing-feature)
- Commit your changes (git commit -m 'Add some amazing feature')
- Push to the branch (git push origin feature/amazing-feature)
- Open a Pull Request
- Hero Features Guide - Comprehensive guide to v1.0.0 features
- Migration Guide - How to migrate existing projects
- Security Guide - Security features and best practices
- API Reference - Complete CLI command reference
MIT © Sehnya
Ready to build the future? Get started with a hero template:
🌟 Major Features:
- 🚀 Hero Experiences - 3 curated full-stack templates (nextjs-fullstack, express-fullstack, react-spa-advanced)
- 🔄 Migration System - Safe project updates with intelligent diffing and conflict resolution
- 📦 Multi-Platform Distribution - Native binaries for macOS, Linux, Windows with Homebrew/Scoop support
- 🔐 Production Security - Sigstore integration with keyless signing and transparency logs
🆕 New Commands:
- peezy migrate - Intelligent project migration with conflict resolution
- peezy verify-template - Verify template signatures with Sigstore
- peezy trust - Manage trusted signers and security policies
- peezy audit - Comprehensive security audit system
✨ Enhanced Features:
- Hero template registry with rich metadata and descriptions
- Enhanced CLI interface with better prompts and guidance
- Cross-platform binaries with automated release pipeline
- Security-first approach with automatic template verification
🔧 Technical Improvements:
- Template diffing system for intelligent migrations
- Sigstore integration for production-grade security
- Multi-platform build system with automated distribution
- Enhanced error handling with actionable suggestions
- 0.1.5 - Prisma/Drizzle ORM integration, volume management
- 0.1.4 - Deterministic builds, JSON output, project reproduction
- 0.1.2 - Version monitoring, doctor command, plugin system
- 0.1.0 - Initial release with 5 templates and interactive CLI