{
  "name": "web",
  "version": "0.0.0",
  "private": true,
  "scripts": {
    "dev": "vite",
    "build": "run-p type-check build-only",
    "preview": "vite preview",
    "test:unit": "vitest",
    "build-only": "vite build",
    "type-check": "vue-tsc --noEmit -p tsconfig.vitest.json --composite false",
    "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore",
    "format": "prettier --write src/"
  },
  "dependencies": {
    "axios": "^0.27.2",
    "element-plus": "^2.4.3",
    "install": "^0.13.0",
    "lodash": "^4.17.21",
    "markdown-it": "^13.0.2",
    "markdown-it-abbr": "^1.0.4",
    "markdown-it-anchor": "^8.6.7",
    "markdown-it-footnote": "^3.0.3",
    "markdown-it-highlightjs": "^4.0.1",
    "markdown-it-sub": "^1.0.0",
    "markdown-it-sup": "^1.0.0",
    "markdown-it-task-lists": "^2.1.1",
    "markdown-it-toc-done-right": "^4.2.0",
    "md-editor-v3": "^4.9.0",
    "medium-zoom": "^1.1.0",
    "mitt": "^3.0.0",
    "npm": "^10.2.4",
    "nprogress": "^0.2.0",
    "pinia": "^2.1.6",
    "pinyin-pro": "^3.18.2",
    "vue": "^3.3.4",
    "vue-clipboard3": "^2.0.0",
    "vue-router": "^4.2.4"
  },
  "devDependencies": {
    "@rushstack/eslint-patch": "^1.3.2",
    "@tsconfig/node18": "^18.2.0",
    "@types/jsdom": "^21.1.1",
    "@types/markdown-it": "^13.0.7",
    "@types/markdown-it-highlightjs": "^3.3.4",
    "@types/node": "^18.17.5",
    "@types/nprogress": "^0.2.0",
    "@vitejs/plugin-vue": "^4.3.1",
    "@vue/eslint-config-prettier": "^8.0.0",
    "@vue/eslint-config-typescript": "^11.0.3",
    "@vue/test-utils": "^2.4.1",
    "@vue/tsconfig": "^0.4.0",
    "eslint": "^8.46.0",
    "eslint-plugin-vue": "^9.16.1",
    "jsdom": "^22.1.0",
    "npm-run-all": "^4.1.5",
    "prettier": "^3.0.0",
    "sass": "^1.66.1",
    "typescript": "~5.1.6",
    "unplugin-vue-define-options": "^1.3.18",
    "vite": "^4.4.9",
    "vitest": "^0.34.2",
    "vue-tsc": "^1.8.8"
  }
}
