chore: 前端工程化 + Git hooks + 对齐 PathEditor 规范

- 新增 .gitattributes(CRLF 统一)+ rust-toolchain.toml
- 新增 Prettier + ESLint + markdownlint 配置
- 新增 Husky Git hooks(pre-commit lint-staged + commit-msg commitlint)
- 新增 vitest 前端测试(12 tests, utils/qrText.ts)
- 新增 @ 路径别名(vite + tsconfig)
- 新增 ROADMAP / SUPPORT / CODEOWNERS / FUNDING / dependabot
- 更新 .gitignore + .editorconfig
- 更新 package.json(新增 lint/format/test 脚本)
- 全项目 prettier 格式化 + eslint 通过
- 更新 CLAUDE.md + README.md
This commit is contained in:
2026-06-19 19:42:13 +08:00
parent ce8063431e
commit c3956f0f36
40 changed files with 4034 additions and 148 deletions
+33 -3
View File
@@ -1,13 +1,30 @@
{
"name": "qrgen-frontend",
"name": "qrgen-gui",
"private": true,
"version": "0.1.0",
"type": "module",
"lint-staged": {
"*.{ts,tsx}": [
"prettier --write",
"eslint --fix"
],
"*.{json,md,css,html}": [
"prettier --write"
]
},
"scripts": {
"dev": "vite --port 1420",
"build": "tsc && vite build",
"preview": "vite preview",
"tauri": "tauri"
"tauri": "tauri",
"lint": "eslint .",
"lint:fix": "eslint . --fix",
"format": "prettier --write \"src/**/*.{ts,tsx}\"",
"format:check": "prettier --check \"src/**/*.{ts,tsx}\"",
"test": "vitest run",
"test:watch": "vitest",
"test:coverage": "vitest run --coverage",
"prepare": "husky"
},
"dependencies": {
"@tauri-apps/api": "^2",
@@ -19,14 +36,27 @@
"react-dom": "^18.3.1"
},
"devDependencies": {
"@commitlint/cli": "^19",
"@commitlint/config-conventional": "^19",
"@eslint/js": "^9",
"@tauri-apps/cli": "^2.11.2",
"@testing-library/jest-dom": "^6",
"@testing-library/react": "^16",
"@types/react": "^18.3.12",
"@types/react-dom": "^18.3.1",
"@vitejs/plugin-react": "^4.3.4",
"autoprefixer": "^10.4.20",
"eslint": "^9",
"globals": "^16",
"husky": "^9",
"jsdom": "^26",
"lint-staged": "^15",
"postcss": "^8.4.49",
"prettier": "^3",
"tailwindcss": "^3.4.16",
"typescript": "^5.6.3",
"vite": "^6.0.3"
"typescript-eslint": "^8",
"vite": "^6.0.3",
"vitest": "^3"
}
}