GitHub - httpdss/structkit: StructKit simplifies project organization by creating consistent file and folder structures tailored to your specific needs. Enhance productivity and maintain uniformity across all your projects with this powerful and flexible tool.

🚀 StructKit: Automated Project Structure Generator

StructKit Logo

codecov GitHub issues GitHub pull requests GitHub stars

StructKit is a powerful, flexible tool for automating project structure creation through YAML configurations. Generate consistent project layouts, boilerplate code, and configurations with template variables, remote content fetching, and intelligent file handling.

📚 View Complete Documentation | 🚀 Quick Start Guide | 🔧 Installation

✨ Key Features

  • 📝 YAML-Based Configuration - Define project structures in simple, readable YAML
  • 🔧 Template Variables - Dynamic content with Jinja2 templating and interactive prompts
  • 🌐 Remote Content - Fetch files from GitHub, HTTP/HTTPS, S3, and Google Cloud Storage
  • 🛡️ Smart File Handling - Multiple strategies for managing existing files (overwrite, skip, backup, etc.)
  • 🪝 Automation Hooks - Pre and post-generation shell commands
  • 🎯 Dry Run Mode - Preview changes before applying them
  • ✅ Validation & Schema - Built-in YAML validation and IDE support
  • 🤖 MCP Integration - Model Context Protocol support for AI-assisted development workflows

Project scaffolding tools exist in most ecosystems, but structkit solves problems the others don't.

The problem with copy-paste and "golden repos"

Most teams start with a "just copy the reference project" approach. This works until:

  • The reference repo falls out of date
  • Different teams diverge on standards
  • Onboarding a new engineer takes half a day of tribal knowledge transfer
  • A security baseline change means updating 20 repos manually

How structkit is different

Feature cookiecutter copier structkit
Remote content (GitHub, S3, GCS, HTTP)
AI / MCP integration
Pre/post generation hooks
Dry run mode
YAML-first (no template repo required)
Multiple file conflict strategies
IDE schema validation

Key differentiators:

  • Remote-first content: Reference your organization's canonical CI template from GitHub directly in your structkit config. When the template updates, all new projects get the update — no copy-paste maintenance.
  • AI-native via MCP: structkit ships a Model Context Protocol server. Your AI assistant can generate project scaffolds from natural language, using your templates as the source of truth.
  • YAML-first: Define structures directly in YAML. No need to manage a separate template repository.

Who uses structkit?

  • Platform / DevEx teams enforcing org-wide project standards across all services
  • DevOps engineers generating consistent Terraform modules, K8s manifests, and CI pipelines
  • Individual developers tired of recreating the same boilerplate across projects

🚀 Quick Start

Installation

# Install via pip
pip install structkit

# Or run with Docker
docker run -v $(pwd):/workdir ghcr.io/httpdss/structkit:main generate my-config.yaml ./output

Basic Usage

# Generate a Terraform module structure
structkit generate terraform-module ./my-terraform-module

# List available structures
structkit list

# Validate a configuration
structkit validate my-config.yaml

# Start MCP server for AI integration
structkit mcp --server

Example Configuration

files:
  - README.md:
      content: |
        # {{@ project_name @}}
        Generated with StructKit
  - .gitignore:
      file: github://github/gitignore/main/Python.gitignore

folders:
  - src/:
      struct: project/python
      with:
        app_name: "{{@ project_name | slugify @}}"

variables:
  - project_name:
      description: "Name of your project"
      type: string
      default: "MyProject"

📚 Documentation

Our comprehensive documentation is organized into the following sections:

🏁 Getting Started

⚙️ Configuration

🔧 Advanced Features

👩‍💻 Development

📖 Resources

🎯 Use Cases

  • Infrastructure as Code - Generate Terraform modules, Kubernetes manifests
  • Application Scaffolding - Bootstrap microservices, APIs, frontend projects
  • DevOps Automation - CI/CD pipeline templates, configuration management
  • Documentation - Consistent project documentation and compliance templates

🤝 Community

📜 License

MIT License - see LICENSE for details.

💰 Support

If StructKit helps your workflow, consider supporting the project: patreon/structproject


📚 Complete Documentation | 🐛 Report Issues | 💬 Discussions