boilr

command module
v0.0.0-...-0c3937f Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 13, 2022 License: Apache-2.0 Imports: 5 Imported by: 0

README

Boilr

Build Status License Release Version Code Quality Documentation Chat Room

Are you doing the same steps over and over again every time you start a new programming project?

Boilr is here to help you create projects from boilerplate templates.

Usage Demonstration

For more details, see Introduction page.

Features

  • No dependencies (NodeJS, Python Interpreter etc.) - Boilr is a single statically linked binary. Grab the one that fits your architecture, and you're all set to save time by using templates!
  • Full Power of Golang Templates - Golang has powerful templating constructs which are very easy to learn and powerful.
  • Dead-Simple Template Creation - Creating boilerplate templates are very easy, check out the license template to see a simple, but very useful template for adding licenses to new projects with a single command.

Installation

Binaries for Linux & OSX are built automatically by Travis every release. You can download them directly or run the installation script.

Please see Installation page for more information.

Getting Started with Boilr

Use boilr help to get the list of available commands.

Download a Template

In order to download a template from a github repository, use the following command:

boilr template download <github-repo-path> <template-tag>
boilr template download tmrts/boilr-license license
Use sub-folder of multi-template repo
boilr template download -p templates/sample https://github.com/jasimmk/boilr-test.git sample
Use specific branch of github repo

An example for multi template, multi branch forced repo clone

boilr template download -b multi-branch https://github.com/jasimmk/boilr-test.git sample
Use sub-folder of specific branch and overwrite local template
boilr template download -p template2/templates/sample -b multi-branch -f https://github.com/jasimmk/boilr-test.git sample

The downloaded template will be saved to local boilr registry.

Save a Local Template

In order to save a template from filesystem to the template registry use the following command:

boilr template save <template-path> <template-tag>
boilr template save ~/boilr-license license

The saved template will be saved to local boilr registry.

Use a Template

For a Boilr template with the given directory structure:

.
├── project.json
├── README.md
└── template
    └── LICENSE

And the following project.json context file:

{
    "Author": "Tamer Tas",
    "Year": "2015",
    "License": [
        "Apache Software License 2.0",
        "MIT",
        "GNU GPL v3.0"
    ]
}

When using the template with the following command:

boilr template use <template-tag> <target-dir>
boilr template use license /workspace/tmrts/example-project/

The user will be prompted as follows:

[?] Please choose an option for "License"
    1 -  "Apache Software License 2.0"
    2 -  "MIT"
    3 -  "GNU GPL v3.0"
    Select from 1..3 [default: 1]: 2
[?] Please choose a value for "Year" [default: "2015"]:
[?] Please choose a value for "Author" [default: "Tamer Tas"]:
[✔] Created /workspace/tmrts/example-project/LICENSE
[✔] Successfully executed the project template license in /workspace/tmrts/example-project

For more information please take a look at Usage and Creating Templates pages in the wiki.

List of Templates

Electron Logo Docker Logo Kubernetes Logo

Take a look at the Templates page for an index of project templates, examples, and more information.

Need Help? Found a bug? Want a Feature?

If you'd like to contribute, share your opinions or ask questions, please feel free to open an issue.

At this stage, user feedback is of utmost importance, every contribution is welcome however small it may be.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
pkg
cmd
util/git
Package git is a facade for git methods used by boilr
Package git is a facade for git methods used by boilr
util/tlog
Package tlog implements logging utilities for boilr
Package tlog implements logging utilities for boilr

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL