{
  "name": "backend_lecture2_example",
  "version": "2.0.0",
  "private": true,
  "scripts": {
    "dev": "next dev | pino-pretty",
    "build": "next build --turbopack",
    "start": "next start",
    "lint": "eslint ./src",
    "lint-fix": "eslint ./src --fix",
    "format": "prettier --write ./src"
  },
  "dependencies": {
    "@prisma/adapter-pg": "^7.3.0",
    "@prisma/client": "^7.3.0",
    "@radix-ui/react-avatar": "^1.1.10",
    "@radix-ui/react-dialog": "^1.1.15",
    "@radix-ui/react-dropdown-menu": "^2.1.16",
    "@radix-ui/react-label": "^2.1.7",
    "@radix-ui/react-navigation-menu": "^1.2.14",
    "@radix-ui/react-popover": "^1.1.15",
    "@radix-ui/react-separator": "^1.1.7",
    "@radix-ui/react-slot": "^1.2.3",
    "@radix-ui/react-tooltip": "^1.2.8",
    "class-variance-authority": "^0.7.1",
    "clsx": "^2.1.1",
    "cmdk": "^1.1.1",
    "date-fns": "^4.1.0",
    "dotenv": "^17.2.3",
    "lucide-react": "^0.544.0",
    "motion": "^12.23.22",
    "next": "^16.1.6",
    "pg": "^8.18.0",
    "pino": "^9.11.0",
    "react": "19.2.0",
    "react-day-picker": "^9.11.0",
    "react-dom": "19.2.0",
    "react-resizable-panels": "^3.0.6",
    "tailwind-merge": "^3.3.1"
  },
  "devDependencies": {
    "@eslint/eslintrc": "^3",
    "@eslint/js": "^9.39.2",
    "@faker-js/faker": "^10.0.0",
    "@next/eslint-plugin-next": "^16.1.6",
    "@tailwindcss/postcss": "^4",
    "@types/node": "^20",
    "@types/pg": "^8.16.0",
    "@types/react": "^19",
    "@types/react-dom": "^19",
    "eslint": "^9",
    "eslint-config-next": "^16.1.6",
    "eslint-plugin-react": "^7.37.5",
    "eslint-plugin-react-hooks": "^7.0.1",
    "globals": "^17.1.0",
    "pino-pretty": "^13.1.1",
    "prettier": "^3.8.1",
    "prisma": "^7.3.0",
    "prisma-json-types-generator": "^4.1.1",
    "server-only": "^0.0.1",
    "tailwindcss": "^4",
    "tw-animate-css": "^1.3.8",
    "typescript": "^5",
    "typescript-eslint": "^8.54.0"
  }
}
