Bootstrapper
A VS Code extension that allows you to create projects from blueprints and save your projects as reusable blueprints.
It will work in all VSCode flavored editors. Cursor, WindSurf, etc...
You can see current blueprints and documentation on strapper.org
Features
- Create Projects from Blueprints: Generate new projects using existing blueprint templates
- Save as Blueprint: Convert any project folder into a reusable blueprint
- Blueprint Management: View, edit, duplicate, export, and delete your blueprints
- Community Blueprints: Browse and download blueprints from the community repository
- File Pattern Matching: Exclude unwanted files and folders using customizable patterns
Commands
- Create from Blueprint: Create a new project from an existing blueprint
- Save as Blueprint: Save the current project as a blueprint
- Manage Blueprints: View and manage your local blueprints
- Browse Community Blueprints: Browse and download blueprints from the community repository
The extension now supports community blueprints through a GitHub repository. You can:
- Browse Community Blueprints: Use the
Browse Community Blueprints
command to see available community blueprints
- View Documentation: Many blueprints include detailed README files with usage instructions and examples
- Download Blueprints: Download community blueprints directly to your local blueprints collection
- Use Downloaded Blueprints: Downloaded community blueprints work just like local blueprints
By default, the extension uses the Blueprints repository for community blueprints. You can customize this in the settings.
You can also explore blueprints through our searchable website at strapper.org.
Community blueprints are automatically tagged with the "community" tag when downloaded.
Configuration
The extension supports the following configuration options:
bootstrapper.blueprintsPath
: Custom path for storing blueprints. If empty, uses extension storage.
bootstrapper.includeGitIgnore
: Include .gitignore file when creating blueprints (default: true)
bootstrapper.excludePatterns
: File and folder patterns to exclude when creating blueprints
bootstrapper.communityRepository
: GitHub repository for community blueprints (format: owner/repo)
Usage
Creating a Project from a Blueprint
- Use the Command Palette (
Ctrl+Shift+P
/ Cmd+Shift+P
)
- Run
Bootstrapper: Create from Blueprint
- Select a blueprint from your local collection or browse community blueprints
- Choose a target directory
- Enter a project name
Saving a Project as a Blueprint
- Right-click on a folder in the Explorer
- Select
Save as Blueprint
- Enter blueprint details (name, description, tags)
- The blueprint will be saved to your local collection
Managing Blueprints
- Use the Command Palette
- Run
Bootstrapper: Manage Blueprints
- Create projects, view details, edit metadata, export, duplicate, or delete blueprints
- Use the Command Palette
- Run
Bootstrapper: Browse Community Blueprints
- Browse available blueprints (those with README files show "• Has README")
- For blueprints with documentation, choose "View README" to see detailed information
- Select "Download" to add the blueprint to your local collection
Blueprints are stored as JSON files with the following structure:
{
"name": "Example Blueprint",
"description": "A sample blueprint description",
"id": "unique-blueprint-id",
"createdAt": "2024-01-01T00:00:00.000Z",
"tags": ["javascript", "node", "example"],
"files": {
"package.json": "{ \"name\": \"example\" }",
"src/index.js": "console.log('Hello, World!');"
},
"folders": ["src", "test"]
}
To contribute blueprints to the community repository:
- Fork the Blueprints repository
- Create a folder for your blueprint with both files:
blueprint.json
- The blueprint definition
README.md
- Documentation, usage instructions, and examples
- Submit a pull request
- Once merged, your blueprints will be available to all users
Recommended Repository Structure
Strapperorg/blueprints/
├── react-typescript-app/
│ ├── blueprint.json
│ └── README.md
├── node-express-api/
│ ├── blueprint.json
│ └── README.md
└── README.md (main repository README)
README Template for Blueprints
Each blueprint should include a README.md
with:
The meta at the very top of the file.
The meta at the top is very important for the Blueprints webpage.
Example:
<!--
title: Static Website Starter
description: A simple, clean starter template for static websites with HTML, CSS, and JavaScript
tags: html, css, javascript, static, website, starter
-->
- Description: What the blueprint creates
- Prerequisites: Required tools, extensions, or dependencies
- Usage: How to use the generated project
- Structure: Overview of the generated file structure
- Customization: How to modify the blueprint for different needs
Requirements
License
This project is licensed under the MIT License.