{"id":37211516,"url":"https://github.com/anikghosh256/kitty-cli","last_synced_at":"2026-01-15T00:05:06.292Z","repository":{"id":154005037,"uuid":"606530271","full_name":"anikghosh256/kitty-cli","owner":"anikghosh256","description":"CLI tool for creating kitty component.","archived":false,"fork":false,"pushed_at":"2025-03-05T10:32:00.000Z","size":94,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-09-20T02:52:46.573Z","etag":null,"topics":["cli","collaborate","command-line","template-tool"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/anikghosh256.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-02-25T19:09:57.000Z","updated_at":"2025-03-05T10:32:03.000Z","dependencies_parsed_at":"2024-05-14T06:32:17.701Z","dependency_job_id":"f9b39408-19c5-4458-a34d-1f6a3989775a","html_url":"https://github.com/anikghosh256/kitty-cli","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/anikghosh256/kitty-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anikghosh256%2Fkitty-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anikghosh256%2Fkitty-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anikghosh256%2Fkitty-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anikghosh256%2Fkitty-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/anikghosh256","download_url":"https://codeload.github.com/anikghosh256/kitty-cli/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anikghosh256%2Fkitty-cli/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28439610,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T22:37:52.437Z","status":"ssl_error","status_checked_at":"2026-01-14T22:37:31.496Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","collaborate","command-line","template-tool"],"created_at":"2026-01-15T00:05:05.714Z","updated_at":"2026-01-15T00:05:06.274Z","avatar_url":"https://github.com/anikghosh256.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# @anikghosh256/kitty-cli\n[![NPM version](https://img.shields.io/npm/v/@anikghosh256/kitty-cli.svg)](https://www.npmjs.com/package/@anikghosh256/kitty-cli) ![NPM](https://img.shields.io/npm/l/@anikghosh256/kitty-cli)\n\nCLI tool for creating kitty component.\n\n## Installation\n```bash\nnpm install @anikghosh256/kitty-cli -g\n```\n\n## Usage\n```bash\nkitty-cli init\n```\n\n\nAfter running `init` command there will be a new directory called `kitty`. In this directory every folder is a module. Each module has a `config.json` file which contains the configuration for the module. For example you will find a folder named `example` which contains a `config.json` file and a `example.kitty` file. The `config.json` file contains the configuration for the module and the `example.kitty` file contains the template for the module.\n\n## How to create a module\n\nTo create a module you have to run the following command:\n\n```bash\nkitty-cli create \u003cmodule-name\u003e --name \u003coutput-file-name\u003e\n```\n\nYou can also pass parameters to the command. For example:\n\n```bash\nkitty-cli create \u003cmodule-name\u003e --name \"userModule\" --author \"John Doe\" --email \"john@doe.com\"\n```\n\n## How to create a module template\n\nTo create a module template you have to create new folder in kitty folder with module name. For example if you want to create a module named `example` you have to create a folder named `example` in the kitty folder. Then you have to create a `config.json` file in the `example` folder. The `config.json` file should contain the following:\n\n```js\n{\n  \"outputExtension\": \"js\",\n  \"outputFile\": \"example.js\", /** optional (also can written with variable Ex: \"${time(now)}-${name}.js\" **/\n  \"sourceFile\": \"./example.kitty\",\n  \"dir\": \"./\",\n  \"inputs\": {\n    \"name\": {},\n    \"message\": {\n      \"default\": \"hi\"\n    }\n  }\n}\n```\n\nThe `outputExtension` is the extension of the output file. The `sourceFile` is the path to the template file. The `dir` is the directory where the output file will be created. The `inputs` is an object which contains the inputs for the template. The key of the object is the name of the input and the value is an object which contains the default value of the input you can leave it empty if you don't want to set a default value.\n\nThen you have to create a template file. The template file should have the same name as the `sourceFile` in the `config.json` file. For example if the `sourceFile` is `./example.kitty` the template file should be named `example.kitty`. The template file will contain your code and some variables. The variables will be replaced with the inputs you passed to the command. For example if you have a variable named `name` in your template file and you pass `John` as the value of the `name` variable the `name` variable in the template file will be replaced with `John`.\n\n```js\n// example.kitty\nconsole.log('Hello ${name}');\n```\n\n```bash\nkitty-cli create example --name \"John\"\n```\n\nThe output will be:\n\n```js\n// John.js\nconsole.log('Hello John');\n```\n\nNote: The `name` variable is a special variable. It will also be used to name the output file. If you don't pass the `name` variable to the command it will show an error.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanikghosh256%2Fkitty-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanikghosh256%2Fkitty-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanikghosh256%2Fkitty-cli/lists"}