/ package.json
package.json
1 { 2 "name": "gpting", 3 "version": "0.1.0", 4 "private": true, 5 "scripts": { 6 "dev": "next dev", 7 "build": "next build", 8 "start": "next start", 9 "lint": "next lint", 10 "stripe:listen": "stripe listen --forward-to localhost:3000/api/stripe/webhook" 11 }, 12 "dependencies": { 13 "@auth/mongodb-adapter": "^2.5.0", 14 "@babel/core": "^7.24.0", 15 "@babel/preset-typescript": "^7.23.3", 16 "@headlessui/react": "^1.7.18", 17 "@heroicons/react": "^2.1.1", 18 "@hookform/resolvers": "^3.3.4", 19 "@lucia-auth/adapter-mongodb": "^1.0.3", 20 "@radix-ui/react-avatar": "^1.0.4", 21 "@radix-ui/react-label": "^2.0.2", 22 "@radix-ui/react-popover": "^1.0.7", 23 "@radix-ui/react-slot": "^1.0.2", 24 "@radix-ui/react-toast": "^1.1.5", 25 "@radix-ui/react-tooltip": "^1.0.7", 26 "@stripe/stripe-js": "^3.0.7", 27 "@supabase/auth-helpers-nextjs": "^0.9.0", 28 "@supabase/ssr": "^0.1.0", 29 "@supabase/supabase-js": "^2.39.7", 30 "ai": "^3.0.2", 31 "appwrite": "^13.0.2", 32 "axios": "^1.6.7", 33 "class-variance-authority": "^0.7.0", 34 "clsx": "^2.1.0", 35 "framer-motion": "^11.0.8", 36 "lucide-react": "^0.344.0", 37 "micro": "^10.0.1", 38 "mongodb": "^6.5.0", 39 "mongoose": "^8.2.1", 40 "next": "14.1.2-canary.2", 41 "next-auth": "^4.24.7", 42 "nodemailer": "^6.9.12", 43 "openai": "^4.28.4", 44 "openweather-api-node": "^3.1.2", 45 "react": "^18", 46 "react-dom": "^18", 47 "react-hook-form": "^7.51.0", 48 "react-intersection-observer": "^9.8.1", 49 "stripe": "^14.19.0", 50 "stripe-nanoid": "^0.2.3", 51 "tailwind-merge": "^2.2.1", 52 "tailwindcss-animate": "^1.0.7", 53 "weather-js": "^2.0.0", 54 "zod": "^3.22.4" 55 }, 56 "devDependencies": { 57 "@types/react": "18.2.61", 58 "eslint": "^8", 59 "eslint-config-next": "14.1.2-canary.2", 60 "postcss": "^8", 61 "tailwindcss": "^3.4.1" 62 } 63 }