{ "name": "spliit2", "version": "0.1.0", "private": true, "engines": { "node": ">=24", "npm": ">=11" }, "scripts": { "dev": "next dev", "build": "next build", "start": "next start", "lint": "oxlint", "check-types": "tsc --noEmit", "check-formatting": "prettier -c src e2e perf playwright.config.ts", "prettier": "prettier -w src e2e perf playwright.config.ts", "postinstall": "prisma migrate deploy && prisma generate", "build-image": "./scripts/build-image.sh", "start-container": "docker compose --env-file container.env up", "test": "jest", "e2e": "./scripts/e2e.sh", "e2e:up": "./scripts/e2e.sh up", "e2e:down": "./scripts/e2e.sh down", "e2e:logs": "./scripts/e2e.sh logs", "e2e:test": "./scripts/e2e.sh test", "e2e:report": "playwright show-report", "perf": "./scripts/perf.sh", "perf:up": "./scripts/perf.sh up", "perf:seed": "./scripts/perf.sh seed", "perf:bench": "./scripts/perf.sh bench", "perf:down": "./scripts/perf.sh down", "perf:logs": "./scripts/perf.sh logs", "generate-currency-data": "tsx ./src/scripts/generateCurrencyData.ts" }, "dependencies": { "@aws-sdk/client-s3": "^3.1110.0", "@formatjs/intl-localematcher": "^0.9.0", "@hookform/resolvers": "^5", "@json2csv/plainjs": "^7.0.8", "@prisma/adapter-pg": "^7.10.0", "@prisma/client": "^7.10.0", "@radix-ui/react-checkbox": "^1.3.11", "@radix-ui/react-collapsible": "^1.1.20", "@radix-ui/react-dialog": "^1.1.23", "@radix-ui/react-dropdown-menu": "^2.1.24", "@radix-ui/react-hover-card": "^1.1.23", "@radix-ui/react-icons": "^1.3.2", "@radix-ui/react-label": "^2.1.15", "@radix-ui/react-popover": "^1.1.23", "@radix-ui/react-radio-group": "^1.4.7", "@radix-ui/react-select": "^2.3.7", "@radix-ui/react-slot": "^1.3.3", "@radix-ui/react-tabs": "^1.1.21", "@radix-ui/react-toast": "^1.2.23", "@tailwindcss/typography": "^0.5.20", "@tanstack/react-query": "^5.104.1", "@trpc/client": "^11.19.0", "@trpc/react-query": "^11.19.0", "@trpc/server": "^11.19.0", "class-variance-authority": "^0.7.1", "client-only": "^0.0.1", "clsx": "^2.1.1", "cmdk": "^1.1.1", "content-disposition": "^3.0.0", "dayjs": "^1.11.23", "embla-carousel-react": "^8.6.0", "html5-qrcode": "^2.3.8", "lucide-react": "^1.52.0", "nanoid": "^6.0.1", "negotiator": "^1.1.0", "next": "^16.3.8", "next-intl": "^4.14.9", "next-s3-upload": "^0.3.4", "next-themes": "^0.4.6", "next13-progressbar": "^1.2.2", "openai": "^7.28.0", "pg": "^8.23.1", "prisma": "^7.10.0", "qrcode.react": "^4.2.0", "react": "^19.3.0", "react-dom": "^19.3.0", "react-hook-form": "^7.89.0", "react-intersection-observer": "^11.0.1", "server-only": "^0.0.1", "sharp": "^0.35.5", "superjson": "^2.2.6", "swr": "^2.5.1", "tailwind-merge": "^3", "tailwindcss-animate": "^1.0.7", "ts-pattern": "^5.9.0", "use-debounce": "^10.1.1", "vaul": "^1.1.2", "zod": "^4" }, "devDependencies": { "@ianvs/prettier-plugin-sort-imports": "^4.7.1", "@playwright/test": "^1.63.0", "@tailwindcss/postcss": "^4.3.2", "@testing-library/dom": "^10.4.2", "@testing-library/jest-dom": "^7.0.1", "@testing-library/react": "^16.3.3", "@total-typescript/ts-reset": "^0.6.1", "@types/jest": "^30.0.0", "@types/negotiator": "^0.6.5", "@types/node": "^26", "@types/pg": "^8.23.1", "@types/react": "^19", "@types/react-dom": "^19", "babel-plugin-react-compiler": "^1.0.0", "currency-list": "^1.0.8", "dotenv": "^18.0.4", "jest": "^30.5.2", "jest-environment-jsdom": "^30.5.2", "oxlint": "^1.86.0", "postcss": "^8.5.28", "prettier": "^3.9.9", "tailwindcss": "^4.3.2", "tsx": "^4.23.15", "typescript": "^7.0.2" } }