https://github.com/bzurkowski/boil
Software templates managed via single API
https://github.com/bzurkowski/boil
boilerplate boilerplate-application initialization jinja2 jinja2-templates software-development
Last synced: 7 months ago
JSON representation
Software templates managed via single API
- Host: GitHub
- URL: https://github.com/bzurkowski/boil
- Owner: bzurkowski
- License: mit
- Created: 2018-03-25T23:34:06.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2024-03-20T17:14:39.000Z (almost 2 years ago)
- Last Synced: 2025-05-27T07:46:52.703Z (8 months ago)
- Topics: boilerplate, boilerplate-application, initialization, jinja2, jinja2-templates, software-development
- Language: Jinja
- Homepage:
- Size: 141 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.rst
- License: LICENSE.txt
Awesome Lists containing this project
README
# Boil
[](https://codeclimate.com/github/bzurkowski/boil/maintainability)
[](https://pypi.python.org/pypi/boil)
[](https://pypi.python.org/pypi/boil)
[](https://pypi.python.org/pypi/boil)
[](https://codecov.io/gh/bzurkowski/boil)
------------------------------------------------------------------------
**Initialization of new software projects should be quick and easy.
Period.**
Boil aims to build a centralized, pluggable and community-driven
repository of project templates for various technologies, managed via
single API.
These are the problems that it aims to solve:
- **Wasting time on initializing new software projects from scratch**
In particular: creating a file structure, checking naming
conventions, determining dependencies and completing basic metadata.
- **Poor quality and lack of consistency between projects**
Most developers initiate projects in their own way without complying
with generally accepted standards. Often due to lack of time,
projects are initialized neglectfully, have no maintenance-friendly
structure and are poorly documented.
- **Burden of bootstrapping tools**
Separate app generator for Ansible, Django, or Rails. Switching
between one and the other may be troublesome considering the variety
of APIs and different configuration options for each tool.
## Installation
Use pip or easy_install:
$ pip install boil
## Usage
$ boil
Usage:
boil list
boil search
boil new [--target-dir=]
boil -h | --help
Options:
--target-dir= Target directory where project files should be
populated.
List all available plates:
$ boil list
Search for plates:
$ boil search
Initialize new project from selected plate:
$ boil new
### Examples
List all available plates:
$ boil list
Search for Python-related plates:
$ boil search python
Initialize new Python package:
$ boil new python_package
Initialize new Django app:
$ boil new django_app
Initialize new Rails app:
$ boil new rails_app
Initialize new Ruby gem:
$ boil new gem
Initialize new Bash command-line tool:
$ boil new bash_cli
Initialize new Ansible role:
$ boil new ansible_role
Initialize new plate:
$ boil new plate
## Changelog
All notable changes to this project are documented in the [CHANGELOG](CHANGELOG.rst).