{ "name": "finance-tracker", "version": "0.1.0", "private": true, "type": "module", "scripts": { "dev": "vite", "build": "tsc && vite build", "preview": "vite preview", "lint": "eslint src" }, "dependencies": { "react": "^18.3.1", "react-dom": "^18.3.1", "react-router-dom": "^6.27.0", "@tanstack/react-query": "^5.59.0", "@tanstack/react-query-devtools": "^5.59.0", "zustand": "^5.0.0", "axios": "^1.7.7", "recharts": "^2.13.0", "plotly.js-dist-min": "^2.35.0", "react-plotly.js": "^2.6.0", "date-fns": "^4.1.0", "clsx": "^2.1.1", "tailwind-merge": "^2.5.4", "lucide-react": "^0.454.0", "@radix-ui/react-dialog": "^1.1.2", "@radix-ui/react-dropdown-menu": "^2.1.2", "@radix-ui/react-select": "^2.1.2", "@radix-ui/react-tooltip": "^1.1.4", "@radix-ui/react-tabs": "^1.1.1", "@radix-ui/react-label": "^2.1.0", "@radix-ui/react-switch": "^1.1.1", "@radix-ui/react-popover": "^1.1.2", "react-hook-form": "^7.53.1", "@hookform/resolvers": "^3.9.1", "zod": "^3.23.8", "otpauth": "^9.3.5" }, "devDependencies": { "@types/react": "^18.3.12", "@types/react-dom": "^18.3.1", "@types/react-plotly.js": "^2.6.3", "@vitejs/plugin-react": "^4.3.3", "typescript": "^5.6.3", "vite": "^5.4.10", "tailwindcss": "^3.4.14", "autoprefixer": "^10.4.20", "postcss": "^8.4.47", "@typescript-eslint/eslint-plugin": "^8.13.0", "@typescript-eslint/parser": "^8.13.0", "eslint": "^9.14.0", "eslint-plugin-react-hooks": "^5.0.0" } }