{ "name": "receipt-scanner-app", "version": "1.0.0", "private": true, "scripts": { "dev": "next dev --turbopack", "build": "next build", "start": "next start", "lint": "next lint", "test": "npx tsx tests/e2e/runner.ts", "test:auth": "npx tsx tests/integration/auth_db.test.ts", "db:generate": "drizzle-kit generate", "db:push": "drizzle-kit push", "db:studio": "drizzle-kit studio" }, "dependencies": { "@ai-sdk/google": "^1.1.18", "@ai-sdk/openai": "^1.2.0", "@napi-rs/canvas": "^1.0.6", "@types/nodemailer": "^8.0.1", "ai": "^4.1.54", "canvas-confetti": "^1.9.4", "clsx": "^2.1.1", "drizzle-orm": "^0.38.4", "exceljs": "^4.4.0", "framer-motion": "^13.1.0", "gsap": "^3.15.0", "heic-convert": "^2.1.0", "lucide-react": "^0.475.0", "next": "^15.1.7", "nodemailer": "^9.0.5", "pdf-lib": "^1.17.1", "pdfjs-dist": "^6.2.108", "pg": "^8.13.3", "react": "^19.0.0", "react-dom": "^19.0.0", "sharp": "^0.33.5", "stripe": "^17.7.0", "tailwind-merge": "^3.0.2", "zod": "^3.24.2" }, "devDependencies": { "@types/canvas-confetti": "^1.9.0", "@types/node": "^22.13.5", "@types/pg": "^8.11.11", "@types/react": "^19.0.10", "@types/react-dom": "^19.0.4", "autoprefixer": "^10.4.20", "drizzle-kit": "^0.30.4", "postcss": "^8.5.3", "tailwindcss": "^3.4.17", "typescript": "^5.7.3" } }