From 25cf1df334fce6d37333150adfc14e76b778f280 Mon Sep 17 00:00:00 2001 From: Yuzu Date: Wed, 1 Jul 2026 12:10:06 +0700 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A7=20chore:=20pre-commit=20hooks?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitattributes | 1 + .gitignore | 1 + .husky/pre-commit | 1 + .prettierrc.json | 1 + package.json | 5 ++++- pnpm-lock.yaml | 10 ++++++++++ 6 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 .gitattributes create mode 100644 .husky/pre-commit diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..6313b56 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +* text=auto eol=lf diff --git a/.gitignore b/.gitignore index e24256b..1c67f2c 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ dist/ .DS_Store .env .env.* +.husky/_/ diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100644 index 0000000..b867ec2 --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1 @@ +pnpm check diff --git a/.prettierrc.json b/.prettierrc.json index 90abee2..52daff8 100644 --- a/.prettierrc.json +++ b/.prettierrc.json @@ -1,5 +1,6 @@ { "printWidth": 100, + "endOfLine": "lf", "semi": true, "singleQuote": false, "trailingComma": "all" diff --git a/package.json b/package.json index 6b80c0e..e25aa6e 100644 --- a/package.json +++ b/package.json @@ -8,15 +8,17 @@ "type": "module", "scripts": { "dev": "electron-vite dev", - "build": "pnpm run typecheck && electron-vite build", + "build": "pnpm run check && electron-vite build", "preview": "electron-vite preview", "start": "electron-vite preview", "typecheck:node": "tsc --noEmit -p tsconfig.node.json --composite false", "typecheck:web": "tsc --noEmit -p tsconfig.web.json --composite false", "typecheck": "pnpm run typecheck:node && pnpm run typecheck:web", + "check": "pnpm run lint && pnpm run typecheck && pnpm run format", "lint": "eslint .", "format": "prettier --check .", "format:fix": "prettier --write .", + "prepare": "husky", "package": "pnpm run build && electron-builder --dir", "package:run": "pnpm run package && open dist/mac*/'VRC Circle.app'", "dist": "pnpm run build && electron-builder", @@ -51,6 +53,7 @@ "eslint-plugin-react-hooks": "^7.1.1", "eslint-plugin-react-refresh": "^0.5.3", "globals": "^17.7.0", + "husky": "^9.1.7", "playwright-core": "^1.61.1", "prettier": "^3.6.2", "react": "^19.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 46939ab..b91749d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -81,6 +81,9 @@ importers: globals: specifier: ^17.7.0 version: 17.7.0 + husky: + specifier: ^9.1.7 + version: 9.1.7 playwright-core: specifier: ^1.61.1 version: 1.61.1 @@ -1933,6 +1936,11 @@ packages: humanize-ms@1.2.1: resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} + husky@9.1.7: + resolution: {integrity: sha512-5gs5ytaNjBrh5Ow3zrvdUUY+0VxIuWVL4i9irt6friV+BqdCfmV11CQTWMiBYWHbXhco+J1kHfTOUkePhCDvMA==} + engines: {node: '>=18'} + hasBin: true + i18next@26.3.2: resolution: {integrity: sha512-QQkXAM1sPDHqhxMQuBeHVMUn6mJchF+wdpOoQerciLAFqO3ZYdxO0EUbeEhruyutnNwpUQIITDVzLjwnNL0T1w==} peerDependencies: @@ -4885,6 +4893,8 @@ snapshots: dependencies: ms: 2.1.3 + husky@9.1.7: {} + i18next@26.3.2(typescript@5.9.3): optionalDependencies: typescript: 5.9.3