komp

1.0.9 • Public • Published

Komp

Create files with boilerplate content

Options

$komp --help
 
Usage: komp [options]
 
Options:
  -T, --template <name> File base template
  -v, --verbose         Verbose mode
  -h, --help            output usage information
  -V, --version         output the version number
  
 
Commands:
  new|<name>  Create new boilerplate folder/files
  init|i        Create config file and template folder  

Install

npm -g install komp

Config defaults

The scripts creates a configuration file (.komp) and a directory (comp-templates) with template(s) at project root folder (same as package.json) called .komp to set defaults values. If you want to create new templates you have to put inside [root]comp-templates folder. Notice how the base template is created at [root]/comp-templates/base

.komp

Is a JSON format config file with:

  • baseName. This name will be replaced by the name the user enter in the command.
  • basePath: A default directory where the component folder will be created.
  • template. This is the name of the folder with the boilerplate files. This name also will replaced by the name user enter int the command.
{
    "baseName": "component",
    "basePath": ""
    "template": "base",
}

With this content in .komp file the komp command will search for this structure:

comp-templates (komp will create this folder)
└─ base
    ├─ component.html
    ├─ component.twig
    ├─ component.js
    ├─ component.json
    ├─ component.yaml
    ├─ component.md
    ├─ component.css
    └─ component.scss

Komp ignore the files that finally don't exist in your HD.

You can have more than one "template" in your HD, for example.

comp-templates (komp will create this folder)
├─ base
│  ├─ component.html
│  ├─ component.js
│  ├─ component.json
│  ├─ component.yaml
│  ├─ README.md
│  ├─ component.css
│  └─ component.scss
│
├─ @fractal
│  ├─ component.njk
│  ├─ config.yaml
│  └─ component.css
│
└─ @simple
   └─ component.njk

To create a new component using a differente template use --template flag

komp new button --template fractal

This will create a folder and files in your HD like this:

Note that komp will respect the EXTRA character you put in the template folders and files. If you call to the fractal template, komp will looking for a folder that containt fractal in the name, and then let the extra char ( in this case the @ ). This way you can boilerplate the names too.

button
└─ @button
   ├─ button.njk
   ├─ config.yaml
   └─ button.scss

Examples

# Create .komp config file 
komp init
# Create button component with default template 
komp new button
# Create myCard component using the card template 
komp new myCard --template card

Package Sidebar

Install

npm i komp

Weekly Downloads

0

Version

1.0.9

License

MIT

Unpacked Size

362 kB

Total Files

16

Last publish

Collaborators

  • hisco