{ "name": "frontend", "private": true, "version": "0.0.0", "type": "module", "scripts": { "dev": "vite", "build": "vite build", "preview": "vite preview", "lint": "eslint .", "lint:fix": "eslint . --fix", "format": "prettier --write \"src/**/*.{js,jsx,json,css}\"", "format:check": "prettier --check \"src/**/*.{js,jsx,json,css}\"", "test": "vitest run", "test:watch": "vitest", "test:coverage": "vitest run --coverage" }, "dependencies": { "@heroicons/react": "^2.2.0", "@tensorflow/tfjs": "^4.22.0", "axios": "^1.13.4", "framer-motion": "^12.33.0", "i18next": "^25.8.4", "i18next-browser-languagedetector": "^8.2.0", "prop-types": "^15.8.1", "react": "^19.2.0", "react-dom": "^19.2.0", "react-hot-toast": "^2.6.0", "react-i18next": "^16.5.4", "react-router-dom": "^7.13.0" }, "devDependencies": { "@eslint/js": "^9.39.1", "@tailwindcss/vite": "^4.1.18", "@testing-library/jest-dom": "^6.9.1", "@testing-library/react": "^16.3.2", "@types/react": "^19.2.5", "@types/react-dom": "^19.2.3", "@vitejs/plugin-react": "^5.1.1", "autoprefixer": "^10.4.24", "eslint": "^9.39.1", "eslint-config-prettier": "^10.1.8", "eslint-plugin-prettier": "^5.5.5", "eslint-plugin-react-hooks": "^7.0.1", "eslint-plugin-react-refresh": "^0.4.24", "globals": "^16.5.0", "jsdom": "^27.0.1", "postcss": "^8.5.6", "prettier": "^3.8.1", "tailwindcss": "^4.1.18", "terser": "^5.46.0", "vite": "^7.2.4", "vitest": "^4.0.18" } }