{"id":22502440,"url":"https://github.com/stasson/standard-commit","last_synced_at":"2025-08-03T10:30:52.013Z","repository":{"id":32926198,"uuid":"146549574","full_name":"stasson/standard-commit","owner":"stasson","description":"zero-conf conventional commit helper","archived":false,"fork":false,"pushed_at":"2024-11-18T22:40:41.000Z","size":1108,"stargazers_count":6,"open_issues_count":1,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-30T21:08:34.598Z","etag":null,"topics":["changelog","commit","commitizen","conventional","standard-version"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/stasson.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-08-29T05:27:42.000Z","updated_at":"2024-06-25T19:01:29.000Z","dependencies_parsed_at":"2023-01-14T22:42:09.068Z","dependency_job_id":null,"html_url":"https://github.com/stasson/standard-commit","commit_stats":null,"previous_names":[],"tags_count":57,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stasson%2Fstandard-commit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stasson%2Fstandard-commit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stasson%2Fstandard-commit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stasson%2Fstandard-commit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stasson","download_url":"https://codeload.github.com/stasson/standard-commit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228535828,"owners_count":17933254,"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","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":["changelog","commit","commitizen","conventional","standard-version"],"created_at":"2024-12-06T23:18:28.732Z","updated_at":"2024-12-06T23:18:29.275Z","avatar_url":"https://github.com/stasson.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# standard-commit\n\n[![npm version](https://badge.fury.io/js/standard-commit.svg)](https://badge.fury.io/js/standard-commit)\n\nA zero-config opiniated, [commitizen](https://github.com/commitizen/cz-cli)\nlike command line utility to enforce the\n[conventional commits](https://conventionalcommits.org/) and have a clean\nchangelog with\n[standard-version](https://github.com/conventional-changelog/standard-version).\n\n- **standard-commit**: Same as `git commit` but with prompt and formating of the\n  commit message.\n\n- **standard-commitlint** runs\n  [commitlint](https://github.com/marionebl/commitlint) based on your\n  standard-commit config.\n\n- **standard-commithook** is meant to be run as a `commit-msg` git hook to\n  enforce the convention.\n\n## Usage\n\n\n```bash\nnpm install -g standard-commit\n```\n\n```bash\nstandard-commit --help\n```\n\n### git alias\n\n```bash\n# you can create an alias:\ngit config --global alias.cc '!standard-commit'\n# then use:\ngit cc \u003coption\u003e\n```\n\n### commitlint\n\n```bash\n# Usage: standard-commitlint [options...]\n# Where \u003coptions\u003e is one of:\n#   -f --from  lower end of the commit range to lint.\n#   -t --to    upper end of the commit range to lint.\nstandard-commitlint --help\n```\n\n### ci checks\n\n```bash\n# CI check before merge request\nnpx -p standard-commit standard-commitlint --from origin/master\n```\n\n### repo setup\n\ninstall yorkie (or husky@next)\n\n```bash\nnpm install --save-dev yorkie standard-commit standard-version\n```\n\nand setup the scripts and commit-msg hook in your _package.json_\n\n```json\n{\n  \"scripts\": {\n    \"commit\": \"standard-commit\",\n    \"commitlint\": \"standard-commitlint\",\n    \"release\": \"standard-version\"\n  },\n  \"gitHooks\": {\n    \"commit-msg\": \"standard-commithook\"\n  }\n}\n```\n\n```bash\n# use commit script to commit\nnpm -s run commit\n\n# use commitlint script to check commit history\nnpm -s run commitlint -- --from  origin/master\n\n# use release script to create a version commit\nnpm -s run release\n```\n\n## Configuration\n\n```bash\nstandard-commit --init\n```\n\nyou can configure standard-commit via:\n\n- A `.standard-commitrc` file, written in YAML or JSON, with optional\n  extensions: .yaml/.yml/.json.\n- A `standard-commit.config.js` file that exports an object.\n- A `standard-commit` key in your package.json file.\n\n```ts\n{\n  /**\n   * Allowed types\n   *\n   * @default ['feat','fix','chore','docs','style','refactor','test']\n   */\n  types?: string[]\n\n  /**\n   * When set to 'staged', suggest from staged files (git).\n   * When set to 'packages, suggest from package names (monorepo).\n   * When set to an array, the list of scopes.\n   *\n   * @default 'staged'\n   */\n  scopes?: 'staged' | 'packages' | string[]\n\n  /**\n   * When set to 'suggest', scope is optional.\n   * When set to 'enforce, scope can not be empty.\n   * When set to false, scope prompt is skipped.\n   * @default false\n   */\n  promptScope?: 'suggest' | 'enforce' | false\n\n  /**\n   * whether to strip the scope for scoped packages\n   * @default true\n   */\n  stripPackageScope?: boolean\n\n  /**\n   * set to false to skip.\n   *\n   * @default true\n   */\n  promptBody?: boolean\n\n  /**\n   * set to false to skip.\n   *\n   * @default true\n   */\n  promptBreaking?: boolean\n\n  /**\n   * set to false to skip.\n   *\n   * @default true\n   */\n  promptIssues?: boolean\n\n  /**\n   * set to false to skip.\n   *\n   * @default true\n   */\n  promptConfirm?: boolean\n\n  /**\n   * set to true to enforce 'Signed-off-by:' in footer.\n   *\n   * @default false\n   */\n  enforceSignedOffBy?: boolean\n\n  /**\n   * enforce issue reference when true else for specified list of types.\n   *\n   * @default []\n   */\n  enforceIssueRefs?: boolean | string[]\n\n  /**\n   * enforce issue reference to match the given pattern\n   *\n   * @default ['#']\n   */\n  issuePrefixes?: string[]\n\n  /**\n   * extra commitlint rules\n   *\n   * see http://marionebl.github.io/commitlint/#/reference-rules\n   */\n  rules?: {}\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstasson%2Fstandard-commit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstasson%2Fstandard-commit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstasson%2Fstandard-commit/lists"}