{ "name": "opc-ui", "private": true, "version": "0.0.0", "type": "module", "scripts": { "dev": "vite --port=3000 --host=0.0.0.0", "build": "vue-tsc && vite build", "preview": "vite preview", "clean": "rm -rf dist", "lint": "vue-tsc --noEmit" }, "dependencies": { "@element-plus/icons-vue": "^2.3.2", "@google/genai": "^1.31.0", "@tailwindcss/vite": "^4.0.7", "@vue-office/docx": "^1.6.3", "@vue/shared": "^3.5.13", "@vueuse/core": "^12.7.0", "axios": "^1.7.9", "dotenv": "^17.2.3", "element-plus": "^2.13.7", "express": "^4.21.2", "file-saver": "^2.0.5", "html-to-image": "^1.11.13", "html2canvas": "^1.4.1", "jszip": "^3.10.1", "lucide-vue-next": "^0.475.0", "md-editor-v3": "^6.4.2", "motion": "^12.4.3", "pinia": "^2.3.0", "vue": "^3.5.13", "vue-demi": "^0.14.10", "vue-router": "^4.5.0", "vue3-puzzle-vcode": "^1.1.7" }, "devDependencies": { "@types/file-saver": "^2.0.7", "@types/jszip": "^3.4.0", "@types/node": "^22.14.0", "@vitejs/plugin-vue": "^5.2.1", "autoprefixer": "^10.4.21", "tailwindcss": "^4.0.0", "tsx": "^4.21.0", "typescript": "~5.7.3", "vite": "^6.1.1", "vue-tsc": "^2.2.0" } }