Repolode
ChristianLempa

ChristianLempa/boilerplates

A CLI for creating reusable infrastructure templates and rendering them into environment-specific configs for homelabs and self-hosted setups.

Stars
8,000
Forks
1,820
Open issues
11
Last commit
2 months ago

What is it?

Boilerplates is a template toolkit for homelab and self-hosted infrastructure. You write reusable templates for technologies such as Docker Compose, Kubernetes, Terraform, Ansible, Python, Bash and static files, then render them into concrete configurations by filling in variables through defaults, interactive prompts or command-line overrides.

Templates use a Jinja2-like syntax with custom delimiters (<< >> for variables, <% %> for blocks, <# #> for comments) and live in git-backed libraries. Libraries can be synced in both directions or kept local, and you can add your own repositories alongside the official template library.

The Boilerplates CLI lets you list and inspect templates, validate them, set saved default values, and generate output into any directory. Templates from version 0.2.0 onward must use a template.json manifest and a files/ directory.

Key features

  • 01Reusable templates for Docker Compose, Kubernetes, Terraform, Ansible, Python, Bash and static files
  • 02Jinja2-like syntax with custom << >> variable delimiters and conditional blocks
  • 03Guided interactive prompts, CLI variable overrides and saved defaults
  • 04Git-based template libraries that can sync in both directions or stay local
  • 05Commands to list, inspect, validate and generate templates

Use cases

  • Generating Docker Compose stacks for a homelab with environment-specific hostnames and timezones
  • Keeping one set of Terraform or Ansible templates and rendering them for several servers
  • Sharing a private template library with a team through a Git repository

Quick start

  1. 1

    Run the official install script from the README (it uses pipx)

  2. 2

    Update the template repository library

    boilerplates repo update
  3. 3

    List available Docker Compose templates

    boilerplates compose list
  4. 4

    Generate a template interactively

    boilerplates compose generate authentik

Things to know

  • Uses custom template delimiters (<< >>, <% %>, <# #>) instead of standard Jinja2 syntax.
  • Legacy template.yaml and .j2 templates are no longer supported since version 0.2.0.
  • Validation for python and bash templates is minimal for now.

In collections

Topics

FAQ

What is boilerplates?
A CLI for creating reusable infrastructure templates and rendering them into environment-specific configs for homelabs and self-hosted setups. Boilerplates is a template toolkit for homelab and self-hosted infrastructure. You write reusable templates for technologies such as Docker Compose, Kubernetes, Terraform, Ansible, Python, Bash and static files, then render them into concrete configurations by filling in variables through defaults, interactive prompts or command-line overrides.
Is boilerplates free to use? What license does it have?
boilerplates is open source under the MIT license. Check the license terms before using it in commercial products.
Is boilerplates still maintained?
Updated within 6 months. The last commit to boilerplates was on Aug 31, 2026.
What can I use boilerplates for?
Generating Docker Compose stacks for a homelab with environment-specific hostnames and timezones Keeping one set of Terraform or Ansible templates and rendering them for several servers Sharing a private template library with a team through a Git repository
How do I install boilerplates?
Run the official install script from the README (it uses pipx) Update the template repository library: boilerplates repo update List available Docker Compose templates: boilerplates compose list Generate a template interactively: boilerplates compose generate authentik
Where can I get boilerplates?
The source code and installation instructions are on GitHub: https://github.com/ChristianLempa/boilerplates

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects