Skip to content

birddigital/10x-project-scaffolder

Repository files navigation

๐Ÿš€ 10X Project Scaffolder

License: MIT Shell Script ๏ธMade with Bash

Revolutionary Project Creation System - Interactive menu-driven scaffolding with 50+ production-ready boilerplates, smart detection, and zero-configuration automation.

๐ŸŽฏ Quick Start

# Clone and setup
git clone https://github.com/birddigital/10x-project-scaffolder.git
cd 10x-project-scaffolder

# Launch the interactive menu
./scripts/10x-scaffolder.sh

# Or enable auto-scaffolding
./scripts/auto-scaffolder.sh enable

# Create a project with smart detection
mkdir ~/sources/standalone-projects/my-awesome-app
# โ†’ Automatically scaffolded based on project name! ๐ŸŽ‰

โœจ Features

๐ŸŽฎ Interactive Menu System

  • Beautiful Terminal UI: Visual menu with categorized options
  • 50+ Boilerplates: Production-ready templates for every major stack
  • One-Click Setup: Choose from Web, API, Mobile, ML, Blockchain, CLI, Desktop
  • Zero Learning Curve: Intuitive navigation and descriptions

๐Ÿง  Smart Detection Engine

  • AI-Powered Pattern Recognition: Analyzes project names to auto-select templates
  • Intelligent Defaults: No more manual template selection
  • Pattern-Based: Recognizes dashboard, api, ml, crypto, cli, etc.
  • Auto-Magic: Just name your project and get perfect scaffolding

๐Ÿ”Œ Auto-Scaffolding Hook

  • Directory Monitoring: Real-time detection of new project directories
  • Background Processing: Runs continuously without intervention
  • Toggle System: Enable/disable with simple commands
  • Zero Configuration: Works out of the box

๐Ÿ“š Centralized Boilerplate Database

  • JSON-Based: Single source of truth for all templates
  • Version Controlled: Track changes and improvements over time
  • Modular Design: Easy to add new templates and customize existing ones
  • Production Ready: Each template includes TypeScript, testing, CI/CD, docs

๐Ÿš€ Usage

Method 1: Interactive Menu (Recommended)

10x                    # Launch the interactive scaffolder
scaffold              # Same as above
project-menu          # Same as above

Method 2: Smart Auto-Detection

# The system detects project type from naming patterns
mkdir my-nextjs-app                    # โ†’ Auto-detects Next.js
mkdir user-auth-api                    # โ†’ Auto-detects Express API
mkdir ml-prediction-model              # โ†’ Auto-detects ML project
mkdir crypto-wallet-contract           # โ†’ Auto-detects Blockchain

Method 3: Manual Selection

10x web nextjs my-app                  # Specific tech stack
scaffold api express user-api         # API with Express
10x --auto ml-model                   # Smart detection

Method 4: Auto-Scaffolding Hook

# Enable automatic scaffolding for new directories
enable-scaffold          # Turn on auto-scaffolding
scaffold-status          # Check current status

# Smart mkdir that triggers scaffolding
smkdir ~/sources/standalone-projects/cool-web-app

# Monitor for new directories (background process)
monitor-scaffold         # Start directory monitor

๐Ÿ“ Available Categories

๐ŸŒ Web Applications

  • Next.js Full-Stack: TypeScript, Tailwind, Authentication
  • React SPA: Vite, TypeScript, Modern Tooling
  • Vue, Angular: All major frameworks supported

๐Ÿ”Œ API Services

  • Express.js: TypeScript, Authentication, Testing, Docs
  • FastAPI: Python, Async, SQLAlchemy, OpenAPI
  • Django, Spring: Enterprise-grade options

๐Ÿ“ฑ Mobile Apps

  • React Native: Cross-platform with Navigation
  • Flutter: Google's Framework for Mobile/Desktop
  • Swift/Kotlin: Native Development Options

๐Ÿค– Machine Learning

  • Python ML: Scikit-learn, Pandas, MLflow
  • TensorFlow/PyTorch: Deep Learning Frameworks
  • Jupyter Notebooks: Interactive Development

โ›“๏ธ Blockchain

  • Solidity: Ethereum Smart Contracts with Hardhat
  • Rust: High-Performance Blockchain Development
  • Web3.js: DApp Development Tools

๐Ÿ’ป CLI Tools

  • Rust CLI: High-Performance Command-Line Tools
  • Go Tools: Fast, Cross-Platform Utilities
  • Python Scripts: Rapid Prototyping Tools

๐Ÿ–ฅ๏ธ Desktop Apps

  • Tauri: Rust Backend with Web Frontend
  • Electron: Node.js-Based Desktop Applications

๐ŸŽฏ What Each Scaffold Includes

Every project gets a complete production-ready setup:

  • ๐Ÿ“ Standard Structure: Consistent directory layout
  • โš™๏ธ Development Config: TypeScript, ESLint, Prettier, etc.
  • ๐Ÿ”ง Build Pipeline: npm scripts, build, test, deploy
  • ๐Ÿ“ Documentation: README.md + CLAUDE.md + API docs
  • ๐Ÿงช Testing Setup: Unit tests with examples and CI/CD
  • ๐Ÿš€ Git Ready: Initial commit + branch strategies
  • ๐Ÿ“š Redis Integration: Pre-configured task management
  • ๐Ÿ”— GitHub Ready: SSH remotes + automatic pushes

๐Ÿง  Smart Detection Patterns

The system recognizes patterns in your project names:

  • "dashboard", "portal", "web", "app" โ†’ Next.js/React
  • "api", "backend", "service", "server" โ†’ Express/FastAPI
  • "mobile", "ios", "android" โ†’ React Native
  • "ml", "ai", "model", "training" โ†’ Python ML
  • "blockchain", "crypto", "defi", "contract" โ†’ Solidity/Rust
  • "cli", "tool", "utility" โ†’ Rust/Go CLI
  • "desktop", "gui" โ†’ Tauri/Electron

๐Ÿ“‹ Installation

Prerequisites

  • Bash 4.0+: Modern bash shell
  • Node.js 18+: For Node.js-based projects
  • Git: Version control
  • Optional: fswatch for directory monitoring

Quick Setup

# Clone the repository
git clone https://github.com/birddigital/10x-project-scaffolder.git
cd 10x-project-scaffolder

# Make scripts executable
chmod +x scripts/*.sh

# Add to shell (optional)
echo 'export PATH="$PWD/scripts:$PATH"' >> ~/.zshrc
source ~/.zshrc

# Ready to use!
10x

Shell Integration

Add these aliases to your ~/.zshrc:

# 10X Project Scaffolding System
alias 10x='~/path/to/10x-project-scaffolder/scripts/10x-scaffolder.sh'
alias scaffold='~/path/to/10x-project-scaffolder/scripts/10x-scaffolder.sh'

# Auto-Scaffolding Hook
alias auto-scaffold='~/path/to/10x-project-scaffolder/scripts/auto-scaffolder.sh'
alias enable-scaffold='~/path/to/10x-project-scaffolder/scripts/auto-scaffolder.sh enable'
alias disable-scaffold='~/path/to/10x-project-scaffolder/scripts/auto-scaffolder.sh disable'

๐Ÿ”ง Configuration

Boilerplate Database

The system uses boilerplates/database.json as its centralized template database:

{
  "version": "1.0.0",
  "database": {
    "web": {
      "nextjs": {
        "name": "Next.js Full-Stack App",
        "description": "Production-ready Next.js with TypeScript, Tailwind, Authentication",
        "files": { ... },
        "directories": ["app", "components", "lib"],
        "post_install": [...]
      }
    }
  }
}

Custom Templates

Add your own templates by extending the database:

# Add your company's boilerplate
cp boilerplates/database.json boilerplates/database.json.backup
# Edit and add your templates

Auto-Scaffolding Configuration

# Enable auto-scaffolding
auto-scaffold enable

# Check status
auto-scaffold status

# Start monitoring
auto-scaffold monitor

# Disable
auto-scaffold disable

๐ŸŽฎ Examples

Example 1: Complete Web App in 30 Seconds

# Just create a directory - system does everything
mkdir ~/sources/standalone-projects/ecommerce-dashboard

# โ†“ Smart detection triggers
# โ†“ Creates Next.js app with TypeScript, Tailwind, Auth
# โ†“ Sets up testing with Jest and Cypress
# โ†“ Configures CI/CD with GitHub Actions
# โ†“ Creates GitHub repository
# โ†“ Opens in VS Code with extensions
# โ†“ Ready for development

Example 2: ML Project with Zero Config

10x ml python-ml sentiment-analyzer "NLP sentiment analysis"

# โ†“ Creates Python project with scikit-learn
# โ†“ Sets up Jupyter notebooks
# โ†“ Configures MLflow for experiment tracking
# โ†“ Adds data pipeline structure
# โ†“ Creates API server with FastAPI
# โ†“ Docker configuration
# โ†“ Complete ML stack ready

Example 3: Batch Processing

# Process multiple existing projects
find ~/sources/standalone-projects -type d -maxdepth 1 | while read dir; do
  if [ ! -f "$dir/.scaffolded" ]; then
    10x --auto $(basename "$dir")
  fi
done

๐Ÿ—๏ธ Architecture

10x-project-scaffolder/
โ”œโ”€โ”€ README.md                    # This file
โ”œโ”€โ”€ LICENSE                      # MIT License
โ”œโ”€โ”€ scripts/                     # Core automation scripts
โ”‚   โ”œโ”€โ”€ 10x-scaffolder.sh       # Main interactive scaffolder
โ”‚   โ”œโ”€โ”€ auto-scaffolder.sh       # Auto-scaffolding hook
โ”‚   โ””โ”€โ”€ github-auth-fix.sh       # GitHub authentication
โ”œโ”€โ”€ boilerplates/                # Centralized template database
โ”‚   โ””โ”€โ”€ database.json           # All boilerplate definitions
โ”œโ”€โ”€ docs/                       # Documentation
โ”‚   โ”œโ”€โ”€ API.md                  # API documentation
โ”‚   โ”œโ”€โ”€ TEMPLATES.md            # Template guide
โ”‚   โ””โ”€โ”€ DEVELOPMENT.md          # Development guide
โ””โ”€โ”€ examples/                   # Usage examples
    โ”œโ”€โ”€ workflows/              # Example workflows
    โ””โ”€โ”€ custom-templates/       # Custom template examples

๐Ÿค Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Adding New Templates

  1. Edit boilerplates/database.json
  2. Add your template with proper structure
  3. Test with 10x --test-template your-template
  4. Submit Pull Request

Template structure:

{
  "name": "Your Template Name",
  "description": "What this template does",
  "tags": ["tag1", "tag2"],
  "complexity": "beginner|intermediate|advanced",
  "dependencies": ["node", "python", "go"],
  "files": { ... },
  "directories": ["src", "tests", "docs"],
  "post_install": ["npm install", "git init"]
}

๐Ÿ“– Documentation

๐ŸŽฏ Roadmap

Version 2.0

  • Web UI: Browser-based scaffolding interface
  • Plugin System: Extensible plugin architecture
  • Team Templates: Organization-specific templates
  • Cloud Templates: AWS, GCP, Azure deployment templates
  • AI Templates: LLM-generated custom scaffolds

Version 2.1

  • Integration: VS Code extension
  • Registry: Public template registry
  • Analytics: Usage statistics and insights
  • Collaboration: Team sharing features

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ™ Acknowledgments

  • Inspired by the need for better project automation
  • Built with โค๏ธ for the developer community
  • Powered by Bash, JSON, and modern tooling

๐Ÿ”— Links


๐Ÿš€ From idea to production in seconds, not hours!

Made with โค๏ธ by Adrien Bird

About

๐Ÿš€ Revolutionary Project Scaffolding System - Interactive menu-driven project creation with 50+ production-ready boilerplates, smart detection, and zero-configuration automation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors