Skip to content

Commit 4d70467

Browse files
build: add conventional commits pre-commit (#70)
Adds a husky pre-commit according to the conventional commits specification to ensure git commits follow a given standard. Closes #31
1 parent 278cbbb commit 4d70467

6 files changed

+669
-3
lines changed

.husky/commit-msg

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
pnpm commitlint \

commitlint.config.ts

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
/* eslint-disable ts/no-magic-numbers -- Ignore magic numbers for RuleConfigSeverity. */
2+
import { RuleConfigSeverity, type UserConfig } from "@commitlint/types";
3+
4+
const Configuration: UserConfig = {
5+
extends: ["@commitlint/config-conventional"],
6+
rules: {
7+
"header-max-length": [RuleConfigSeverity.Error, "always", 72],
8+
"scope-enum": [
9+
RuleConfigSeverity.Error,
10+
"always",
11+
["core", "deps", "dev", "lint", "ui", "audio", "assets"],
12+
],
13+
},
14+
};
15+
16+
export default Configuration;

package.json

+6-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@
1919
"eslint-config": "npx @eslint/config-inspector",
2020
"lint": "eslint --max-warnings 0 .",
2121
"upload-assets": "asphalt sync && eslint src/shared/assets.d.ts --fix",
22-
"prepare": "node .husky/install.js"
22+
"prepare": "node .husky/install.js",
23+
"commit": "commit"
2324
},
2425
"dependencies": {
2526
"@flamework/components": "1.2.3",
@@ -52,6 +53,10 @@
5253
"rbxts-transform-env": "2.2.0"
5354
},
5455
"devDependencies": {
56+
"@commitlint/cli": "^19.3.0",
57+
"@commitlint/config-conventional": "^19.2.2",
58+
"@commitlint/prompt-cli": "^19.3.1",
59+
"@commitlint/types": "^19.0.3",
5560
"@eslint-react/eslint-plugin": "1.5.16",
5661
"@eslint/config-inspector": "0.4.11",
5762
"@isentinel/eslint-config": "0.6.1",

0 commit comments

Comments
 (0)