1.3.1 • Published 9 months ago

@sabo99/git-convention v1.3.1

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

@sabo99/git-convention

npm Package License

šŸš€ @sabo99/git-convention is a simple CLI tool to set up Git conventions like Husky and Commitlint in your project.

šŸ“Œ Features

āœ” Automatically installs and configures Husky 🐶
āœ” Sets up Commitlint for commit message validation šŸ“
āœ” Works with any Node.js project šŸ’”

šŸ“¦ Installation

Install globally using npm:

npm install -g @sabo99/git-convention

Or use npx to run it without installation:

npx @sabo99/git-convention init

šŸš€ Usage

To set up Git conventions, run:

npx git-convention init

This will:

  • Install Husky and Commitlint
  • Configure Husky hooks (commit-msg, pre-commit, pre-push)
  • Add .commitlintrc.json to enforce conventional commits

šŸ“ Git Commit Convention Examples

Follow the Conventional Commits standard:

feat(auth): add password reset functionality
fix(cart): resolve issue with item quantity update
refactor(utils): optimize data processing logic
chore(tests): update unit tests for new changes
docs(readme): update installation instructions

šŸ›  Configuration

Customizing .commitlintrc.json

You can modify .commitlintrc.json to adjust commit message rules:

{
  "extends": ["@commitlint/config-conventional"],
  "rules": {
    "header-max-length": [2, "always", 100],
    "type-enum": [
    2,
    "always",
    ["chore", "docs", "feat", "fix", "refactor", "revert", "style", "test"]
    ],
    "type-case": [2, "always", "lowercase"],
    "type-empty": [2, "never"],
    "scope-case": [2, "always", "kebab-case"],
    "scope-empty": [2, "never"],
    "subject-empty": [2, "never"],
    "subject-full-stop": [2, "never", "."]
  },
  ...
}

Custom Husky Hooks

Modify .husky/pre-commit to add custom pre-commit scripts:

#!/usr/bin/env sh

. "$(dirname "$0")/_/husky.sh"

yarn lint

Modify .husky/pre-push to add custom pre-push scripts:

#!/usr/bin/env sh

. "$(dirname "$0")/_/husky.sh"

yarn test:cov

šŸ¤ Contributing

Want to improve this package? Fork the repo and submit a PR! šŸŽ‰

  1. Fork the repo
  2. Clone your fork

    git clone https://github.com/sabo99/git-convention.git
  3. Install dependencies

    npm install
  4. Make your changes and test

  5. Submit a PR šŸš€

šŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

⭐ Show Your Support

Give a ⭐ if you like this project!

1.3.1

9 months ago

1.3.1-alpha1

9 months ago

1.3.1-alpha0

9 months ago

1.3.0

9 months ago

1.2.1

9 months ago

1.2.0

9 months ago

1.1.2

9 months ago

1.1.1

9 months ago

1.1.0

9 months ago

1.0.2

9 months ago

1.0.1

9 months ago

1.0.0

9 months ago