Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

ver. 1.0 beta

Very simple templating engine for directories & files structures.

Creating project structure is not thing I’m doing everyday. Nevertheless when I’m doing it I always feel frustrated that I don’t have anything prepared. Or when I use some third parties templates I’m pissed off when “all I need to do is clone repo, remove .git directory, clean README…” and so on. Using such things is hard because all those templates has also some dynamic parts (like SECRET_KEY in django project).

How it works?

myfancy_template/                                                      simpleapp/
  |-- config.py                 $> boil myfancy_template simpleapp        |-- __init__.py
  `-- tmpl/                     =================================>        `-- simpleapp.py
        |-- __init__.py
        `-- _$project_name$_.py

Boilerplate simply creates project / app structure on the given template basis. You can configurate context variables (only variables) which you can use everywhere in your templates, even in files or directories structures.

How to install?

  1. Pip:

    $> pip install boilerplate
  2. Download and install:

    $> python setup.py install
  3. Or directly from github:

    $> pip install -e git+git://github.com/jqb/boilerplate.git#egg=boilerplate

You need to have root privileges to install it in system packages.

Set up BOILERPLATE_TEMPLATES environ variable to tell boilerplate where it should search for your custom templates. It should be setup in your <dot>-file, eg in your .bashrc

export BOILERPLATE_TEMPLATES=$HOME/.boilerplate_temlplates

Usage

Boilerplate comes with “boil” command line. Here’s how you might use it.

  1. listing existing templates:

    $> boil -l     # show list of all available templates, you can also type "boil --list"
  2. creating new project from existing template:

    $> boil <template-name> <project-name>
    
    
    ``project_name`` and ``template_name`` variables are always available your
    template context.
  3. creating new project template:

    $> cd $BOILERPLATE_TEMPLATES
    $> boil boil_template my_first_template

This is what you gonna get:

$BOILERPLATE_TEMPLATES/my_first_template/
   |-- __init__.py
   |-- config.py    # meta information about template, context variables for template engine
   `-- tmpl/        # template directory, name "tmpl" will be replaced with "project_name"
         `-- my_fancy_template_readme.txt
  1. using my new project template:

    $> boil my_first_template myproject

TODO

  • docs for all features available via Configuration objects

Release files for boilerplate 1.0-beta

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for boilerplate 1.0-beta
File Size Uploaded
boilerplate-1.0-beta.tar.gz 19.3 kB Details

Release files / boilerplate-1.0-beta.tar.gz

Download URL boilerplate-1.0-beta.tar.gz
Size 19.3 kB
Tags Source
SHA-256 checksum
How to use checksums
b82bd5543019937fe4848f51c0a164ce7eb395d0c8007384f47f85e12bdc8003
BLAKE2b-256 checksum
How to use checksums
4e9f724fb1e27e9f7628aa31b64b0a1412260a4dfcbc00290c8bbcf8aaf4e900
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page