Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tombenke/kickoff
Command line tool to easily create boilerplate code for new projects and other things based on archetypes stored in GitHub repos
https://github.com/tombenke/kickoff
cli-utilities kickoff tools
Last synced: 11 days ago
JSON representation
Command line tool to easily create boilerplate code for new projects and other things based on archetypes stored in GitHub repos
- Host: GitHub
- URL: https://github.com/tombenke/kickoff
- Owner: tombenke
- Created: 2014-11-14T18:18:25.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2018-01-20T07:58:12.000Z (almost 7 years ago)
- Last Synced: 2024-12-08T07:16:21.317Z (14 days ago)
- Topics: cli-utilities, kickoff, tools
- Language: JavaScript
- Size: 397 KB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## About
'kickoff' is a Command-Line tool, which can be used to easily create boilerplate code for new projects
and other things based on archetypes stored in GitHub repos or in local directories.1. Install kickoff in global mode.
2. Create the source files in a local folder or in a repository on github
for the project template, including mustache templates.
3. Place the .kickoff.yml file,
to define the questionnaire for collecting parameter values for template files.## Installation
Run the install command:
npm install -g kickoff
Check if kickoff is properly installed:
$ kickoff -h
Usage: kickoff [options]
Options:
-h, --help output usage information
-V, --version output the version number
-v, --verbose Verbose mode
-a, --data-file Path to the yaml format datafile
-f, --folder Path to the source directory
-s, --src Git repository
-d, --dest Destination folder## Create the repository on GitHub for the project template
This is a normal repository, which can contain anything, including mustache templates.
These files will be copied to the destination folder without modification.
During this transfer, each file is processed by the mustache template engine,
so you can place parameters into these files, which will be replaced by actual values,
that you can define through the command line interface of the tool.The enquiry for these parameters can be described in the `.kickoff.yml` file, that you have to place into the root of the repository.
See [ncli-archetype](https://github.com/tombenke/ncli-archetype) repository on GitHub,
that is a Project archetype for Command Line tools using Node.js.## Create your first project from an existing template repository
The following command will create a new command line tool project with all the required boilerplace code,
using the [ncli-archetype](https://github.com/tombenke/ncli-archetype) repository:$ kickoff -s tombenke/ncli-archetype -d new_app
? The name of the application: new_app
? The full name of the author of the application: Tamás Benke
? The email address of the author: [email protected]
? The github account (username) of the author: tombenkeCheck how the parameters requested through the console will substitute the mustache parameters in `README.md` and `package.json` files.
# The .kickoff.yml configuration file
This is a sample configuration file for the kickoff utility:
description: |
This is a project archetype for node.js based, cli applications.
New projects can be generated from this archetype by the
[kickoff](https://github.com/tombenke/kickoff) utility.welcome: >
You are generating a JavaScript project, which is
using node.js, and running as a command-line application.postscript: >
Next steps:
- Install the npm modules required by the newly generated application:
cd
npm installquestions:
-
type: input
name: appname
message: The name of the application
default: anonymous
-
type: input
name: author_full_name
message: The full name of the author of the application
default: Anonymous-
type: input
name: author_email
message: The email address of the author
default: [email protected]-
type: input
name: author_github_account
message: The github account (username) of the author
default: anonymousYou can add as many parameters as you need, using the same names you put into the mustache templates.
To learn more about the tool visit the [homepage](http://tombenke.github.io/kickoff/).