tenpureto
is a tool that allows to easily bootstrap software projects from a
template. Almost every programming language ecosystem provides some
bootstrapping solution. What makes tenpureto
different is simplicity with a
reasonable amount of flexibility:
- Templates can be split into independent features that you can selectively include.
- Projects created from a template can be updated to include upstream changes.
- Contributing to a template is as easy as contributing to any other project.
Project documentation including installation instructions, usage examples and information about authoring new templates is available at tenpureto.org.
You can install tenpureto
with Homebrew:
$ brew tap rtimush/tap # you need it only once
$ brew install tenpureto
You can also download a binary from the releases page.
You can download a statically built binary from the releases page.
If you use Linuxbrew, you can also install tenpureto
from the rtimush/tap
tap in the same way as described in the macOS section.
You need to get Haskell Stack first. Get tenpureto
sources and run
# will install tenpureto binary to ~/.local/bin
$ stack install
or
# will run tenpureto without installing
$ stack run -- <tenpureto options here>
You may need to install libtinfo-dev
(DEB) or libtinfo-devel
(RPM) package before running stack
.
To create a new project run the following command:
$ tenpureto create --template <repository> <directory>
where
<repository>
โ Git URL of a template repository (for GitHub you can just useorganization/repo
).<directory>
โ where to create a project.
If you have a local clone of a Git repository with --mirror
, you can pass its
absolute path instead of a Git URL as the <repository>
argument.
You will be asked to choose a subset of template features you want to include, and to provide some variable values, and then the project will be created.
If you want to incorporate changes that were made in a template into a project that you previously created, run
$ tenpureto update <directory>