{
  "name": "react-example",
  "private": true,
  "version": "0.0.0",
  "type": "module",
  "scripts": {
    "dev": "tsx server.ts",
    "start": "tsx server.ts",
    "build": "vite build",
    "preview": "vite preview",
    "clean": "rm -rf dist",
    "lint": "tsc --noEmit"
  },
  "dependencies": {
    "@google/genai": "^2.4.0",
    "@google/model-viewer": "^4.3.1",
    "@tailwindcss/vite": "^4.1.14",
    "@vitejs/plugin-react": "^5.0.4",
    "chart.js": "^4.5.1",
    "dotenv": "^17.2.3",
    "express": "^4.21.2",
    "extract-zip": "^2.0.1",
    "firebase": "^12.17.1",
    "hash-wasm": "^4.12.0",
    "jsonwebtoken": "^9.0.3",
    "jspdf": "^4.2.1",
    "leaflet": "^1.9.4",
    "lucide-react": "^0.546.0",
    "mammoth": "^1.13.0",
    "motion": "^12.23.24",
    "mysql2": "^3.24.4",
    "nodemailer": "^10.0.10",
    "react": "^19.0.1",
    "react-chartjs-2": "^5.3.1",
    "react-dom": "^19.0.1",
    "recharts": "^3.9.2",
    "three": "^0.183.2",
    "xlsx": "^0.18.5"
  },
  "devDependencies": {
    "@types/express": "^4.17.21",
    "@types/jsonwebtoken": "^9.0.10",
    "@types/leaflet": "^1.9.22",
    "@types/node": "^22.14.0",
    "@types/nodemailer": "^8.0.2",
    "@types/react": "^19.3.0",
    "@types/react-dom": "^19.3.0",
    "@types/three": "^0.183.1",
    "autoprefixer": "^10.4.21",
    "esbuild": "^0.25.0",
    "sharp": "^0.35.4",
    "tailwindcss": "^4.1.14",
    "tsx": "^4.21.0",
    "typescript": "~5.8.2",
    "vite": "^6.2.3"
  }
}
