Files
012-kaopeilian/frontend/package.json
111 998211c483 feat: 初始化考培练系统项目
- 从服务器拉取完整代码
- 按框架规范整理项目结构
- 配置 Drone CI 测试环境部署
- 包含后端(FastAPI)、前端(Vue3)、管理端

技术栈: Vue3 + TypeScript + FastAPI + MySQL
2026-01-24 19:33:28 +08:00

75 lines
2.6 KiB
JSON

{
"name": "kaopeilian-frontend",
"version": "1.0.0",
"type": "module",
"scripts": {
"postinstall": "npm run sync:pdfjs",
"sync:pdfjs": "mkdir -p public/pdfjs/cmaps public/pdfjs/standard_fonts && cp -r node_modules/pdfjs-dist/cmaps/* public/pdfjs/cmaps/ && cp -r node_modules/pdfjs-dist/standard_fonts/* public/pdfjs/standard_fonts/",
"dev": "vite",
"build": "vite build",
"build:check": "vue-tsc && vite build",
"build:analyze": "ANALYZE=true vue-tsc && vite build",
"build:staging": "vue-tsc && vite build --mode staging",
"preview": "vite preview",
"test": "vitest",
"test:ui": "vitest --ui",
"test:coverage": "vitest --coverage",
"test:run": "vitest run",
"lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix",
"lint:check": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts",
"format": "prettier --write src/",
"format:check": "prettier --check src/",
"type-check": "vue-tsc --noEmit",
"clean": "rm -rf dist node_modules/.cache",
"docker:build": "./docker/scripts/build.sh",
"docker:build:dev": "./docker/scripts/build.sh development",
"docker:up": "./docker/scripts/deploy.sh production up",
"docker:up:dev": "./docker/scripts/deploy.sh development up",
"docker:down": "./docker/scripts/deploy.sh production down"
},
"dependencies": {
"@coze/api": "^1.3.7",
"@element-plus/icons-vue": "^2.3.1",
"@types/dompurify": "^3.0.5",
"@types/markdown-it": "^14.1.2",
"axios": "^1.12.2",
"dayjs": "^1.11.18",
"dompurify": "^3.3.0",
"echarts": "^6.0.0",
"element-plus": "^2.6.1",
"markdown-it": "^14.1.0",
"marked": "^15.0.12",
"pdfjs-dist": "^4.10.38",
"pinia": "^2.1.7",
"vue": "^3.4.21",
"vue-pdf-embed": "^2.1.3",
"vue-router": "^4.3.0"
},
"devDependencies": {
"@types/node": "^20.11.24",
"@typescript-eslint/eslint-plugin": "^6.21.0",
"@typescript-eslint/parser": "^6.21.0",
"@vitejs/plugin-vue": "^5.0.4",
"@vitest/coverage-v8": "^1.3.1",
"@vitest/ui": "^1.3.1",
"@vue/eslint-config-prettier": "^9.0.0",
"@vue/eslint-config-typescript": "^12.0.0",
"@vue/test-utils": "^2.4.4",
"autoprefixer": "^10.4.17",
"cssnano": "^6.0.3",
"eslint": "^8.56.0",
"eslint-plugin-vue": "^9.20.1",
"jsdom": "^24.0.0",
"postcss": "^8.4.35",
"prettier": "^3.2.5",
"rollup-plugin-visualizer": "^5.12.0",
"sass": "^1.71.1",
"terser": "^5.27.0",
"typescript": "^5.2.2",
"vite": "^5.1.6",
"vite-plugin-html": "^3.2.2",
"vitest": "^1.3.1",
"vue-tsc": "^2.0.6"
}
}