cithak

Simple, Secure yet Powerful template manager

Stats

StarsIssuesVersionUpdatedCreatedSize
cithak
301.1.03 days ago3 months agoMinified + gzip package size for cithak in KB

Readme

Cithak

icon


made-with-javascript badge badge badge badge

GitHub stars

Homepage: https://KucingKode.github.io/Cithak

πŸ€” What Is This

Cithak is a simple, secure yet powerful template manager CLI. Cithak was designed to be safe and transparent, so everything will be done under your permission.

πŸ’» Features

  • Smart replacement
    Cithak will not replace files that joinable like .json, .yaml, .toml, and .env, but cithak will join data from thoose file into one new file, you can disable this feature by add --no-join flag.

  • Rich features
    Cithak has a lot of super useful feature like save template to your local computer offline use, merge templates, and many more.

  • Template tasks
    Under your permission Cithak allows template to execute npm, node, and all files on your system, but you can disable this with --no-exec flag.

  • Safe and transparent
    Cithak will log every template activities to console and ask for your permission, so you will know what happen behind your screen.

πŸ“‚ Installation

  • Node.js
npm install -g cithak
  • Windows, Linux, Mac

To use Cithak on Windows, Linux, or Mac without node js, download the latest executable for your operating system from releases


πŸ“ƒ Documentation

πŸ’‘ Quick Start

  • Create a template
    Create a new folder for your template, you can configure your template inside template.json, it can contain description for your template and many more, for more information about template.json, read this section.
{
  "description": "describe-your-template-here"
}
  • Save new template
    To save a template just go to your template and type cth save [template-name]

  • Check your template
    After you save your template just check your template by using cth info [template-name], it should log your template name and it's description

  • Clone to your project
    The last thing you want to do is just clone your template to your project by typing cth clone [template-name].

Congratulation, now you know how to use Cithak CLIπŸŽ‰

πŸ“˜ Docs

CLI

information

for more CLI information type cth help in your terminal

Joinable Files

  • YAML *.yml, *.yaml
  • TOML *.toml
  • JSON *.json
  • README | README.[md, txt, markdown]
  • ENV *.env
  • REST *.rest
  • .prettierrc
  • .gitignore
  • .npmignore
  • .prettierignore

Template JSON

template.json is important for your template, it contains description and tasks of your template, template.json must have description that describe the template, and template.json can also have:

  • tasks

tasks is array of string contains all commands will executed

{
   "tasks": [
      "npm i package",
      "node index.js",
      "echo 'hello'"
   ]
}
  • include

include is array of glob string will include a file to the template folder if that file or folder is outside from the template folder.

"include": [
   "../outside.js",
   "../outside-folder/outside2.js"
]
  • exclude

exclude is array of glob string that will ignore files that match with it's pattern

"exclude": [
   "**/*-ignore.*"
]

More information, Visit our website


πŸŽ‚ Contibuting

If you interested in contributing to this project, please read our CONTRIBUTING.md.

πŸ“ƒ License

Cithak was published under MIT License.

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.