@opentiny/tiny-toolkit-pro
Version:
TinyPro Vue:开箱即用、前后端分离的 Vue 后台管理模板
139 lines (138 loc) • 4.32 kB
JSON
{
"name": "tiny-pro-vue",
"description": "Tiny Pro for Vue",
"version": "1.0.0",
"private": true,
"author": "Tiny Team",
"license": "MIT",
"type": "module",
"scripts": {
"start": "vite --config ./config/vite.config.dev.ts --port 3031",
"build": "vite build --config ./config/vite.config.prod.ts",
"build:wp": "webpack --config webpack.config.js",
"dev:wp": "webpack-dev-server --progress --config webpack.config.js",
"dev:rp": "rspack serve",
"build:rp": "rspack build",
"report": "cross-env REPORT=true npm run build",
"lint-staged": "npx lint-staged",
"mock": "tsx ./src/mock/index.ts",
"dev:fr": "farm",
"build:fr": "farm build"
},
"lint-staged": {
"*.{js,ts,jsx,tsx}": [
"prettier --write",
"eslint --fix"
],
"*.vue": [
"stylelint --fix",
"prettier --write",
"eslint --fix"
],
"*.{less,css}": [
"stylelint --fix",
"prettier --write"
]
},
"dependencies": {
"@babel/core": "^7.25.2",
"@gaonengwww/mock-server": "^1.0.5",
"@opentiny/hwc-client": "^0.0.14",
"@opentiny/icons": "^0.1.3",
"@opentiny/vue": "^3.21.0",
"@opentiny/vue-huicharts": "^3.22.0",
"@opentiny/vue-icon": "^3.21.0",
"@opentiny/vue-locale": "^3.21.0",
"@opentiny/vue-search-box": "^0.1.3",
"@opentiny/vue-theme": "^3.21.0",
"@types/mockjs": "^1.0.10",
"@types/node": "^22.7.4",
"@vueuse/core": "^10.11.1",
"@vueuse/head": "^2.0.0",
"axios": "^1.8.0",
"fp-ts": "^2.16.1",
"mitt": "^3.0.1",
"nprogress": "^1.0.0-1",
"pinia": "2.1.7",
"query-string": "^8.2.0",
"style-resources-loader": "1.5.0",
"vue": "^3.5.10",
"vue-eslint-parser": "9.4.3",
"vue-i18n": "^11.0.0",
"vue-router": "^4.4.5",
"vue-style-loader": "^4.1.3",
"xlsx": "^0.18.0"
},
"devDependencies": {
"@babel/preset-env": "^7.25.4",
"@babel/preset-typescript": "^7.24.7",
"@commitlint/cli": "^11.0.0",
"@commitlint/config-conventional": "^12.1.4",
"@farmfe/cli": "^1.0.4",
"@farmfe/core": "^1.3.28",
"@farmfe/js-plugin-less": "^1.9.0",
"@rspack/cli": "^0.7.5",
"@rspack/core": "^0.7.5",
"@types/lodash": "^4.17.9",
"@types/nprogress": "^0.2.3",
"@typescript-eslint/eslint-plugin": "^5.62.0",
"@typescript-eslint/parser": "^5.62.0",
"@vitejs/plugin-vue": "^5.2.3",
"@vitejs/plugin-vue-jsx": "^4.1.2",
"@vue/babel-helper-vue-jsx-merge-props": "^1.4.0",
"@vue/babel-plugin-jsx": "^1.2.5",
"@vue/babel-preset-jsx": "^1.4.0",
"babel-loader": "^9.2.1",
"core-js": "^3.38.1",
"cross-env": "^7.0.3",
"css-loader": "^7.1.2",
"dotenv": "^16.4.5",
"eslint": "^7.32.0",
"eslint-config-airbnb-base": "^14.2.1",
"eslint-config-prettier": "^8.10.0",
"eslint-import-resolver-typescript": "^2.7.1",
"eslint-plugin-import": "^2.30.0",
"eslint-plugin-prettier": "^3.4.1",
"eslint-plugin-vue": "^8.7.1",
"html-webpack-plugin": "5.6.0",
"husky": "^7.0.4",
"import-meta-loader": "^1.1.0",
"less": "^4.2.0",
"less-loader": "^12.2.0",
"lint-staged": "^11.2.6",
"mockjs": "^1.1.0",
"prettier": "^3.3.3",
"rollup-plugin-visualizer": "^5.12.0",
"style-loader": "^4.0.0",
"stylelint": "^13.13.1",
"stylelint-config-prettier": "^8.0.2",
"stylelint-config-rational-order": "^0.1.2",
"stylelint-config-standard": "^20.0.0",
"stylelint-order": "^4.1.0",
"ts-loader": "^9.5.1",
"ts-node": "^10.9.2",
"tsx": "^4.19.1",
"unocss": "66.1.0-beta.11",
"typescript": "^5.1.6",
"unplugin-vue-components": "^0.17.21",
"vite": "^6.1.0",
"vite-plugin-compression": "^0.5.1",
"vite-plugin-eslint": "^1.8.1",
"vite-plugin-html": "^3.2.2",
"vite-plugin-mock": "^2.9.8",
"vite-plugin-style-import": "^2.0.0",
"vite-svg-loader": "^4.0.0",
"vue-loader": "^17.4.2",
"vue-tsc": "^1.8.27",
"webpack": "^5.95.0",
"webpack-cli": "^5.1.4",
"webpack-dev-server": "^5.1.0"
},
"engines": {
"node": ">=14.0.0"
},
"resolutions": {
"bin-wrapper": "npm:bin-wrapper-china",
"gifsicle": "5.2.0"
}
}