{ "name": "smart-parking-frontend", "version": "1.0.0", "description": "Smart Parking Finder Frontend Application", "private": true, "scripts": { "dev": "next dev -H 0.0.0.0 -p 3000", "dev:local": "next dev", "build": "next build", "start": "next start -H 0.0.0.0 -p 3000", "start:local": "next start", "lint": "next lint", "lint:fix": "next lint --fix", "type-check": "tsc --noEmit", "test": "jest", "test:watch": "jest --watch", "test:coverage": "jest --coverage", "storybook": "storybook dev -p 6006", "build-storybook": "storybook build" }, "dependencies": { "@hookform/resolvers": "^3.3.2", "@radix-ui/react-dialog": "^1.0.5", "@radix-ui/react-dropdown-menu": "^2.0.6", "@radix-ui/react-select": "^2.0.0", "@radix-ui/react-slider": "^1.1.2", "@radix-ui/react-switch": "^1.0.3", "@radix-ui/react-tooltip": "^1.0.7", "@tailwindcss/forms": "^0.5.10", "@tailwindcss/typography": "^0.5.16", "@tanstack/react-query": "^5.83.0", "axios": "^1.6.0", "class-variance-authority": "^0.7.0", "clsx": "^2.0.0", "date-fns": "^2.30.0", "framer-motion": "^10.16.4", "leaflet": "^1.9.4", "lucide-react": "^0.292.0", "next": "^14.0.0", "react": "^18.2.0", "react-dom": "^18.2.0", "react-hook-form": "^7.47.0", "react-hot-toast": "^2.5.2", "react-leaflet": "^4.2.1", "react-query": "^3.39.3", "react-use-measure": "^2.1.1", "tailwind-merge": "^2.0.0", "use-debounce": "^10.0.0", "zod": "^3.22.4", "zustand": "^4.4.6" }, "devDependencies": { "@types/leaflet": "^1.9.8", "@types/node": "^20.10.4", "@types/react": "^18.2.42", "@types/react-dom": "^18.2.17", "autoprefixer": "^10.4.16", "eslint": "^8.55.0", "eslint-config-next": "^14.0.0", "postcss": "^8.4.32", "tailwindcss": "^3.3.6", "typescript": "^5.3.3" }, "engines": { "node": ">=18.0.0" }, "browserslist": { "production": [ ">0.2%", "not dead", "not op_mini all" ], "development": [ "last 1 chrome version", "last 1 firefox version", "last 1 safari version" ] } }