{
  "name": "mintel-blog",
  "type": "module",
  "version": "0.1.0",
  "description": "Technical problem solver's blog - practical insights and learning notes",
  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start",
    "lint": "next lint",
    "test": "npm run test:smoke",
    "test:smoke": "tsx ./scripts/smoke-test.ts",
    "test:links": "tsx ./scripts/test-links.ts",
    "test:file-examples": "tsx ./scripts/test-file-examples-comprehensive.ts"
  },
  "dependencies": {
    "@react-pdf/renderer": "^4.3.2",
    "@types/ioredis": "^4.28.10",
    "@types/react": "^19.2.8",
    "@types/react-dom": "^19.2.3",
    "@vercel/og": "^0.8.6",
    "framer-motion": "^12.29.2",
    "ioredis": "^5.9.1",
    "lucide-react": "^0.468.0",
    "mermaid": "^11.12.2",
    "next": "^16.1.6",
    "prismjs": "^1.30.0",
    "qrcode": "^1.5.4",
    "react": "^19.2.3",
    "react-dom": "^19.2.3",
    "shiki": "^1.24.2",
    "tailwindcss": "^3.4.0"
  },
  "devDependencies": {
    "@tailwindcss/typography": "^0.5.15",
    "@types/node": "^25.0.6",
    "@types/prismjs": "^1.26.5",
    "@types/qrcode": "^1.5.6",
    "autoprefixer": "^10.4.20",
    "postcss": "^8.4.49",
    "tsx": "^4.21.0",
    "typescript": "5.9.3"
  }
}
