summaryrefslogtreecommitdiff
path: root/apps/web/package.json
blob: 31582be19e84653f0f81a7acb185d8dfef1607d9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
{
  "name": "@opencut/web",
  "version": "0.1.0",
  "private": true,
  "packageManager": "bun@1.2.18",
  "scripts": {
    "dev": "next dev --turbopack",
    "build": "next build",
    "start": "next start",
    "lint": "biome check src/",
    "lint:fix": "biome check src/ --write",
    "format": "biome format src/ --write",
    "db:generate": "drizzle-kit generate",
    "db:migrate": "drizzle-kit migrate",
    "db:push:local": "cross-env NODE_ENV=development drizzle-kit push",
    "db:push:prod": "cross-env NODE_ENV=production drizzle-kit push"
  },
  "dependencies": {
    "@ffmpeg/core": "^0.12.10",
    "@ffmpeg/ffmpeg": "^0.12.15",
    "@ffmpeg/util": "^0.12.2",
    "@hello-pangea/dnd": "^18.0.1",
    "@hookform/resolvers": "^3.9.1",
    "@hugeicons/core-free-icons": "^3.1.1",
    "@hugeicons/react": "^1.1.4",
    "@huggingface/transformers": "^3.8.1",
    "@opencut/env": "workspace:*",
    "@opencut/ui": "workspace:*",
    "@radix-ui/react-dialog": "^1.1.15",
    "@radix-ui/react-select": "^2.2.6",
    "@radix-ui/react-separator": "^1.1.8",
    "@radix-ui/react-slot": "^1.2.4",
    "@radix-ui/react-tooltip": "^1.2.8",
    "@upstash/ratelimit": "^2.0.6",
    "@upstash/redis": "^1.35.4",
    "@vercel/analytics": "^1.4.1",
    "aws4fetch": "^1.0.20",
    "better-auth": "^1.2.7",
    "botid": "^1.4.2",
    "class-variance-authority": "^0.7.1",
    "clsx": "^2.1.1",
    "cmdk": "^1.0.0",
    "dayjs": "^1.11.13",
    "drizzle-orm": "^0.44.2",
    "embla-carousel-react": "^8.5.1",
    "eventemitter3": "^5.0.1",
    "feed": "^5.1.0",
    "input-otp": "^1.4.1",
    "lucide-react": "^0.562.0",
    "mediabunny": "^1.29.1",
    "motion": "^12.18.1",
    "nanoid": "^5.1.5",
    "next": "16.1.3",
    "next-themes": "^0.4.4",
    "pg": "^8.16.2",
    "postgres": "^3.4.5",
    "radix-ui": "^1.4.2",
    "react": "^19.0.0",
    "react-day-picker": "^8.10.1",
    "react-dom": "^19.0.0",
    "react-hook-form": "^7.54.0",
    "react-icons": "^5.4.0",
    "react-markdown": "^10.1.0",
    "react-phone-number-input": "^3.4.11",
    "react-resizable-panels": "^2.1.7",
    "recharts": "^2.14.1",
    "rehype-autolink-headings": "^7.1.0",
    "rehype-parse": "^9.0.1",
    "rehype-sanitize": "^6.0.0",
    "rehype-slug": "^6.0.0",
    "rehype-stringify": "^10.0.1",
    "sonner": "^1.7.1",
    "tailwind-merge": "^2.5.5",
    "tailwindcss-animate": "^1.0.7",
    "unified": "^11.0.5",
    "use-deep-compare-effect": "^1.8.1",
    "vaul": "^1.1.1",
    "wavesurfer.js": "^7.9.8",
    "zod": "^3.25.67",
    "zustand": "^5.0.2"
  },
  "devDependencies": {
    "@tailwindcss/postcss": "^4.1.11",
    "@tailwindcss/typography": "^0.5.16",
    "@types/bun": "latest",
    "@types/node": "^24.2.1",
    "@types/pg": "^8.15.4",
    "@types/react": "^19",
    "@types/react-dom": "^19",
    "cross-env": "^7.0.3",
    "drizzle-kit": "^0.31.4",
    "dotenv": "^16.5.0",
    "postcss": "^8",
    "tailwindcss": "^4.1.11",
    "tsx": "^4.7.1",
    "typescript": "^5.8.3"
  }
}