Strapper Documentation

Welcome to Strapper - the ultimate project template ecosystem for developers. Learn how to use the Bootstrapper VS Code extension and community blueprints to jumpstart your development projects.

🚀 Getting Started

Strapper is a comprehensive project template ecosystem that helps developers quickly scaffold new projects using pre-built blueprints. The system consists of:

💡 What are Blueprints?
Blueprints are project templates that contain file structures, code, configurations, and documentation. They allow you to quickly generate new projects with predefined setups for different technologies and frameworks.

💾 Installation

Install the Bootstrapper Extension

  1. Open VS Code (or any VS Code-based editor like Cursor, WindSurf, etc.)
  2. Go to the Extensions view (Ctrl+Shift+X / Cmd+Shift+X)
  3. Search for "Bootstrapper" by Strapperorg
  4. Click Install
  5. Reload VS Code if prompted
✅ Compatibility
The Bootstrapper extension works with all VS Code-flavored editors including VS Code, Cursor, WindSurf, and others.

Verify Installation

After installation, you should see the following commands in the Command Palette (Ctrl+Shift+P / Cmd+Shift+P):

📝 Using Blueprints

Creating Projects from Blueprints

  1. Open the Command Palette (Ctrl+Shift+P / Cmd+Shift+P)
  2. Run Bootstrapper: Create from Blueprint
  3. Choose from your local blueprints or browse community blueprints
  4. Select a target directory for your new project
  5. Enter a project name
  6. Your project will be generated with all files and folders from the blueprint

Saving Projects as Blueprints

  1. Right-click on any folder in the VS Code Explorer
  2. Select Save as Blueprint from the context menu
  3. Enter blueprint details:
    • Name: A descriptive name for your blueprint
    • Description: What this blueprint creates
    • Tags: Keywords to help categorize the blueprint
  4. The blueprint will be saved to your local collection

Managing Your Blueprints

Use Bootstrapper: Manage Blueprints to:

Community Blueprints

Access a vast collection of community-contributed blueprints:

Via VS Code Extension

  1. Run Bootstrapper: Browse Community Blueprints
  2. Browse available blueprints from the GitHub repository
  3. View README documentation for detailed information
  4. Download blueprints to your local collection
  5. Use downloaded blueprints like any local blueprint

Via Strapper Website

  1. Visit strapper.org
  2. Search and filter blueprints by technology, type, or purpose
  3. View detailed documentation and examples
  4. Download or copy blueprint information
💡 Pro Tip
Community blueprints are automatically tagged with "community" when downloaded, making them easy to identify in your local collection.

🤝 Contributing Blueprints

Share your project templates with the community! Here's how to contribute:

Repository Structure

Each blueprint should be in its own folder in the root of the blueprints repository:

Strapperorg/blueprints/
├── your-blueprint-name/
│   ├── blueprint.json       # Required: Blueprint definition
│   └── README.md           # Recommended: Documentation
├── another-blueprint/
│   ├── blueprint.json
│   └── README.md
└── ...

Contribution Steps

  1. Fork the repository at github.com/Strapperorg/blueprints
  2. Create a new folder in the root with a descriptive kebab-case name
  3. Add blueprint.json with your blueprint definition
  4. Add README.md with documentation and usage instructions
  5. Test your blueprint using the Bootstrapper extension
  6. Submit a pull request with a clear description

README.md Requirements

⚠️ Required Meta Section
Every blueprint README.md MUST start with HTML comment metadata at the very top. This is essential for the Strapper website to properly index and display your blueprint.

The meta section must be the first thing in your README.md file:

<!--
title: Your Blueprint Name
description: Brief description of what this blueprint creates
tags: technology, framework, type, purpose
-->

Meta Fields Explained:

Blueprint Guidelines

⚠️ Quality Standards
All contributed blueprints should generate working projects and include proper documentation. Low-quality submissions may be rejected.

📐 Blueprint Format

Blueprints are defined using a JSON format that specifies files, folders, and metadata:

{
  "name": "React TypeScript App",
  "description": "A modern React application with TypeScript and Vite",
  "tags": ["react", "typescript", "vite", "frontend"],
  "files": {
    "package.json": "{\n  \"name\": \"{{PROJECT_NAME}}\",\n  \"version\": \"1.0.0\",\n  \"scripts\": {\n    \"dev\": \"vite\"\n  }\n}",
    "src/App.tsx": "import React from 'react';\n\nfunction App() {\n  return (\n    <div>\n      <h1>Welcome to {{PROJECT_NAME}}</h1>\n    </div>\n  );\n}\n\nexport default App;",
    "README.md": "# {{PROJECT_NAME}}\n\nGenerated on {{DATE}}\n\n## Getting Started\n\n```bash\nnpm install\nnpm run dev\n```"
  },
  "folders": ["src", "public", "tests"]
}

Required Fields

Optional Fields

🔧 Template Variables

Use template variables in your file content for dynamic replacement when projects are created:

{{PROJECT_NAME}}         - Project name as entered by user
{{PROJECT_NAME_UPPER}}   - UPPERCASE version
{{PROJECT_NAME_LOWER}}   - lowercase version
{{PROJECT_NAME_CAMEL}}   - camelCase version
{{PROJECT_NAME_PASCAL}}  - PascalCase version
{{DATE}}                 - Current date (YYYY-MM-DD)
{{YEAR}}                 - Current year

Example Usage

{
  "files": {
    "package.json": "{\n  \"name\": \"{{PROJECT_NAME_LOWER}}\",\n  \"version\": \"1.0.0\"\n}",
    "src/{{PROJECT_NAME_PASCAL}}.js": "class {{PROJECT_NAME_PASCAL}} {\n  constructor() {\n    console.log('{{PROJECT_NAME}} created on {{DATE}}');\n  }\n}"
  }
}
💡 Backward Compatibility
The extension supports both {{VARIABLE}} and VARIABLE formats for template variables.

⚙️ Configuration

Customize the Bootstrapper extension behavior through VS Code settings:

Available Settings

Accessing Settings

  1. Open VS Code Settings (Ctrl+, / Cmd+,)
  2. Search for "bootstrapper"
  3. Modify settings as needed
  4. Changes take effect immediately

🆘 Support & Troubleshooting

Common Issues

Extension Commands Not Appearing

Cannot Access Community Blueprints

Blueprint Creation Fails

Getting Help

Extension Issues

Report Extension Bug

Blueprint Issues

Report Blueprint Issue

Feature Requests

Have an idea for improving Strapper? We welcome feature requests and discussions in our GitHub repositories.

Community

🎉 Happy Coding!
We hope Strapper helps you build amazing projects faster. Don't forget to share your favorite blueprints with the community!