hasaki-cli v0.1.2
Hasaki 
A simple file generator for all exist projects.
Installation
Prerequisites: Node.js ( >= 5.8.0 preferred ). 4.x should also work, but we haven't test it yet.
$ npm install -g hasaki-cliUsage
In your project root directory
$ hasaki initIf you want to use default configuration, you can use
$ hasaki init -yto generate a default .hasakirc file.
see more information by use
$ hasaki -hCreate files
After get your .hasakirc file, simply run
$ hasaki create <page-name> <rule-name><,rule-name2>...it will automatically create some <page-name> files according to your <rule-name> configuration. You can apply
multi <rule-name> by set them one by one or create a new rule and put all the target rule into an array, we call
this new rule a rule group.
.hasakirc
.hasakirc is hasaki config file, it will automatically generate when you use hasaki init . But you can also
write or modify the whole file manually. Make sure the content type should be json.
configuration fields
nameProject name, default valuea hasaki project.rulestype ArrayruleNametype Object, A name for your current rule.describetype String, describe for your rule. (optional)templatestype Arraysourcetype String, source template file or directory.targettype String, target directory.keepFileNametype Boolean.placeholdertype String, use to translate<your-placeholder-value>to<page-name>(optional)
More about placeholder:
You can set this value to add a placeholder in your template file. hasaki will look for your template
file and replace all the placeholder to the <page-name> which you've set in hasaki create <page-name> <rule-name>. The default
value is __name。 In some case, you can set it to __Name or __NAME。 When placeholder's first letter is uppercase
the <page-name>'s first letter will set to uppercase. So it's easy to see __NAME will make the whole <page-name> become uppercase.
Default .hasakirc
Our default .hasakirc looks like
{
"name": "a hasaki project",
"rules": [
{
"rule-name": {
"describe": "this is a rule example (you must modify the templates below to fit your need)",
"templates": [
{
"source": "",
"target": "",
"keepFileName": false,
"placeholder": ""
}
]
}
}
]
}Contribution
请在提交 PR 前阅读我们的贡献指南
License
MIT