{ "name": "portfolio", "version": "0.1.0", "private": true, "scripts": { "dev": "next dev", "build": "next build", "start": "next start", "lint": "next lint", "buildAnalyze": "cross-env ANALYZE=true next build", "test": "jest" }, "dependencies": { "@next/bundle-analyzer": "^15.1.7", "@prisma/client": "^6.3.1", "@vercel/og": "^0.6.5", "clsx": "^2.1.0", "dotenv": "^16.4.7", "framer-motion": "^11.0.0", "gray-matter": "^4.0.3", "lucide-react": "^0.542.0", "next": "15.1.7", "node-cache": "^5.1.2", "node-fetch": "^2.7.0", "nodemailer": "^6.10.0", "react": "^19.0.0", "react-dom": "^19.0.0", "react-markdown": "^9.0.1", "react-responsive-masonry": "^2.7.1", "react-syntax-highlighter": "^15.5.0", "tailwind-merge": "^2.2.1" }, "devDependencies": { "@eslint/eslintrc": "^3", "@testing-library/dom": "^10.4.0", "@testing-library/jest-dom": "^6.6.3", "@testing-library/react": "^16.2.0", "@types/jest": "^29.5.14", "@types/node": "^22", "@types/node-fetch": "^2.6.13", "@types/nodemailer": "^6.4.17", "@types/react": "^19", "@types/react-dom": "^19", "@types/react-responsive-masonry": "^2.6.0", "@types/react-syntax-highlighter": "^15.5.11", "cross-env": "^7.0.3", "eslint": "^9", "eslint-config-next": "15.1.7", "jest": "^29.7.0", "jest-environment-jsdom": "^29.7.0", "nodemailer-mock": "^2.0.8", "postcss": "^8", "tailwindcss": "^3.4.17", "ts-jest": "^29.2.5", "ts-node": "^10.9.2", "typescript": "^5.7.3", "whatwg-fetch": "^3.6.20" } }