{"id":21437401,"url":"https://github.com/keidrun/dept","last_synced_at":"2025-09-15T20:11:22.801Z","repository":{"id":33160385,"uuid":"153238880","full_name":"keidrun/dept","owner":"keidrun","description":"Dependencies templates management CLI to install your fixed NPM or Yarn dependencies and cofing files to your project.","archived":false,"fork":false,"pushed_at":"2023-10-17T02:02:39.000Z","size":5171,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-09-03T23:58:03.062Z","etag":null,"topics":["cli","config","dependencies","devdependencies","npm","templates","yarn"],"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/keidrun.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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}},"created_at":"2018-10-16T07:09:09.000Z","updated_at":"2023-02-19T06:25:49.000Z","dependencies_parsed_at":"2024-11-15T21:52:00.004Z","dependency_job_id":"79a8ab8a-c3f9-459f-b291-67eca42b5a7f","html_url":"https://github.com/keidrun/dept","commit_stats":{"total_commits":127,"total_committers":5,"mean_commits":25.4,"dds":0.6771653543307087,"last_synced_commit":"4855f9bf600ae883d9777cf43d50d8e161a49486"},"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"purl":"pkg:github/keidrun/dept","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keidrun%2Fdept","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keidrun%2Fdept/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keidrun%2Fdept/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keidrun%2Fdept/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/keidrun","download_url":"https://codeload.github.com/keidrun/dept/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keidrun%2Fdept/sbom","scorecard":{"id":553753,"data":{"date":"2025-08-11","repo":{"name":"github.com/keidrun/dept","commit":"7d30f4581f2686a28a2337fb2d5840db212a1ac0"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.1,"checks":[{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":3,"reason":"Found 1/3 approved changesets -- score normalized to 3","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":0,"reason":"23 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-h5c3-5r3r-rr8q","Warn: Project is vulnerable to: GHSA-rmvr-2pp2-xj38","Warn: Project is vulnerable to: GHSA-xx4v-prfh-6cgc","Warn: Project is vulnerable to: GHSA-93q8-gq69-wqmw","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-fjxv-7rqg-78g4","Warn: Project is vulnerable to: GHSA-78xj-cgh5-2h22","Warn: Project is vulnerable to: GHSA-2p57-rm9w-gvfp","Warn: Project is vulnerable to: GHSA-896r-f27r-55mw","Warn: Project is vulnerable to: GHSA-9c47-m6qq-7p4h","Warn: Project is vulnerable to: GHSA-7wpw-2hjm-89gp","Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv","Warn: Project is vulnerable to: GHSA-xvch-5gv4-984h","Warn: Project is vulnerable to: GHSA-p8p7-x288-28g6","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-f5x3-32g6-xq36","Warn: Project is vulnerable to: GHSA-52f5-9888-hmc6","Warn: Project is vulnerable to: GHSA-72xf-g2v4-qvf3","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-20T11:44:57.957Z","repository_id":33160385,"created_at":"2025-08-20T11:44:57.957Z","updated_at":"2025-08-20T11:44:57.957Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275313157,"owners_count":25442612,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-15T02:00:09.272Z","response_time":75,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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","config","dependencies","devdependencies","npm","templates","yarn"],"created_at":"2024-11-23T00:19:32.983Z","updated_at":"2025-09-15T20:11:22.764Z","avatar_url":"https://github.com/keidrun.png","language":"JavaScript","readme":"# dept\n\n[![NPM version][npm-image]][npm-url] [![npm module downloads][npm-downloads-image]][npm-downloads-url] [![Build Status][travis-image]][travis-url] [![Dependency Status][depstat-image]][depstat-url] [![License: MIT][license-image]][license-url] [![Greenkeeper badge][greenkeeper-image]][greenkeeper-url]\n\nDependencies templates management CLI to install your fixed NPM or Yarn dependencies and cofing files to your project.\n\n## Usage\n\n```bash\n$ dept -h\nUsage: dept \u003ccommand\u003e [options]\n\nCommands:\n  dept list                    Show all templates                  [aliases: ls]\n  dept show [templateName]     Show a template in details           [aliases: s]\n  dept default [templateName]  Use a template by default           [aliases: df]\n  dept install [templateName]  Install dependencies and config files from a\n                               template                             [aliases: i]\n  dept add [templateName]      Add a template with '--data' or '--file'\n                               options                              [aliases: a]\n  dept remove [templateName]   Remove a template                    [aliases: r]\n  dept rename [templateName]   Rename a template name\n  [newTemplateName]                                                [aliases: mv]\n  dept view [templateName]     View a filed in a template\n  [viewStatement]                                                   [aliases: v]\n  dept update [templateName]   Update a field in a template\n  [updateStatement]                                                 [aliases: u]\n  dept export [templateName]   Export a JSON template file          [aliases: e]\n  dept listenv                 Show all package managers          [aliases: env]\n  dept useenv [environment]    Use a package manager              [aliases: use]\n  dept json2yaml               Convert a JSON format to a YAML\n                               format with '--data' or '--file'\n                               options                             [aliases: jy]\n  dept yaml2json               Convert a YAML format to a JSON\n                               format with '--data' or '--file'\n                               options                             [aliases: yj]\n\nOptions:\n  --version, -v  Show version                                          [boolean]\n  --data, -d     Specify a JSON or YAML data string with 'add',\n                 'json2yaml' or 'yaml2json'                             [string]\n  --file, -f     Specify a JSON or YAML file with 'add', 'json2yaml'\n                 or 'yaml2json'                                         [string]\n  --filename, -n  Specify a filename of a JSON or YAML file with 'export',\n                  'json2yaml' or 'yaml2json'                            [string]\n  --out-dir, -o   Specify an output directory path to export a JSON or YAML\n                  file with 'export', 'json2yaml' or 'yaml2json'        [string]\n  --help, -h     Show help                                             [boolean]\n```\n\n## Template JSON/YAML format\n\nYou can define the following properties.\n\n- `dependencies`: NPM package `dependencies`\n- `devDependencies`: NPM package `devDependencies`\n- `files`: Config files like `.eslintrc`, `.travis.yml` and so on. If file extension is 'yaml' or 'yml', it is exported as a YAML file.\n\nJSON example:\n\n```json\n{\n  \"dependencies\": {\n    \"module-name-A\": \"1.0.0\"\n  },\n  \"devDependencies\": {\n    \"module-name-B\": \"*\",\n    \"module-name-C\": \"^2.1.1\"\n  },\n  \"files\": {\n    \"file-name-A.json\": {\n      \"any-prop-1\": [\n        \"any-element-1\",\n        \"any-element-2\",\n        \"any-element-3\"\n      ],\n      \"any-prop-2\": {\n        \"any-value-1\": 123,\n        \"any-value-2\": true,\n        \"any-value-3\": \"something\"\n      },\n      \"any-prop-3\": \"anything\"\n    },\n    \"file-name-B.txt\": \"Hello World\",\n    \"file-name-C.yml\": {\n      \"any-value\": \"any-value\",\n      \"any-list\": [\n        \"any-element-1\",\n        \"any-element-2\"\n      ]\n    }\n  }\n}\n```\n\nYAML example:\n\n```yaml\ndependencies:\n  module-name-A: 1.0.0\ndevDependencies:\n  module-name-B: '*'\n  module-name-C: ^2.1.1\nfiles:\n  file-name-A.json:\n    any-prop-1:\n      - any-element-1\n      - any-element-2\n      - any-element-3\n    any-prop-2:\n      any-value-1: 123\n      any-value-2: true\n      any-value-3: something\n    any-prop-3: anything\n  file-name-B.txt: Hello World\n  file-name-C.yml:\n    any-value: any-value\n    any-list:\n      - any-element-1\n      - any-element-2\n```\n\nReal world's templates' examples are [HERE](/examples/EXAMPLES.md).\n\n## Use cases\n\n### Install your fixed template to your existing project\n\nYou can add your fixed template with `dept add` then install the template to your existing project with `dept install`.\nAnd you can set a default template with `dept default`.\n\n```bash\n$ dept add react-eslint-prettier -f ./template.json\n$ dept default react-eslint-prettier\n$ dept list\n* react-eslint-prettier\n  express-typescript\n  vue-nuxt\n$ cd your-app # Already NPM installed\n$ dept install\n```\n\n### Install your fixed template in your new project\n\nIt initializes your new project automatically if `package.json` doesn't exist.\n\n```bash\n$ dept list\n* react-eslint-prettier\n  express-typescript\n  vue-nuxt\n$ mkdir your-new-app\n$ cd your-new-app # NOT NPM installed\n$ dept install\n```\n\n### Install your fixed template in your new project with Yarn\n\nYou can also use `yarn` instead of `npm` after you change a package manager with `env` and `use`.\n\n```bash\n$ dept env\n* npm\n  yarn\n$ dept use yarn\n$ dept env\n  npm\n* yarn\n$ dept list\n* react-eslint-prettier\n  express-typescript\n  vue-nuxt\n$ mkdir your-new-app\n$ cd your-new-app # NOT Yarn installed\n$ dept install\n```\n\n### Specify a template from your fixed templates\n\nOf course, you can specify a template you'd like to use in your project after `dept install`.\n\n```bash\n$ dept list\n* react-eslint-prettier\n  express-typescript\n  vue-nuxt\n$ cd your-app\n$ dept install express-typescript\n```\n\n### View a field in a template\n\nYou can view a field in a template with `dept view`.\n\n```bash\n$ dept list\n* react-eslint-prettier\n  express-typescript\n  vue-nuxt\n$ dept view express-typescript \"dependencies\"\n{\n        \"express\": \"^4.16.0\",\n        \"mongoose\": \"*\"\n}\n$ dept view express-typescript \"dependencies.express\"\n\"^4.16.0\"\n```\n\n### Update a field in a template\n\nYou can update a field in a template with `dept update`.\nEither `dependencies`, `devDependencies` or `files` is updatable.\n\n```bash\n$ dept list\n* react-eslint-prettier\n  express-typescript\n  vue-nuxt\n$ dept update express-typescript \"dependencies={\\\"express\\\":\\\"^4.16.4\\\", \\\"mongoose\\\":\\\"\u003e=5.3.10\\\"}\"\n```\n\n### Export a template file as JSON format\n\nYou can export a JSON template file with `dept export` to share it.\n\n```bash\n$ dept list\n* react-eslint-prettier\n  express-typescript\n  vue-nuxt\n$ dept export react-eslint-prettier --filename fixed-react-eslint-prettier.json --out-dir ./fixed-templates-dir\n```\n\n## Helper commands\n\n### Convert a JSON file to a YAML file\n\nYou  can convet a JSON file to a YAML file with `dept json2yaml`.\n\n```bash\n$ dept json2yaml --file ./data.json --filename your-data.yml --out-dir ./converted-dir\n$ ls ./converted-dir/\nyour-data.yml\n$ dept jy -f ./data.json # Short expression\n$ ls ./\ndata.yml\n```\n\n### Convert a YAML file to a JSON file\n\nYou  can convet a YAML file to a JSON file with `dept yaml2json`.\n\n```bash\n$ dept yaml2json --file ./data.yml --filename your-data.json --out-dir ./converted-dir\n$ ls ./converted-dir/\nyour-data.json\n$ dept yj -f ./data.yml # Short expression\n$ ls ./\ndata.json\n```\n\n[npm-url]: https://npmjs.org/package/dept\n[npm-image]: https://badge.fury.io/js/dept.svg\n[npm-downloads-url]: https://npmjs.org/package/dept\n[npm-downloads-image]: https://img.shields.io/npm/dt/dept.svg\n[travis-url]: https://travis-ci.org/keidrun/dept\n[travis-image]: https://secure.travis-ci.org/keidrun/dept.svg?branch=master\n[depstat-url]: https://david-dm.org/keidrun/dept\n[depstat-image]: https://david-dm.org/keidrun/dept.svg\n[license-url]: https://opensource.org/licenses/MIT\n[license-image]: https://img.shields.io/badge/License-MIT-yellow.svg\n[greenkeeper-url]: https://greenkeeper.io/\n[greenkeeper-image]: https://badges.greenkeeper.io/keidrun/dept.svg\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkeidrun%2Fdept","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkeidrun%2Fdept","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkeidrun%2Fdept/lists"}