Repository navigation
Expand file tree
/
Copy pathpackage.json
More file actions
120 lines (120 loc) · 3.82 KB
/
Copy pathpackage.json
File metadata and controls
120 lines (120 loc) · 3.82 KB
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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
{
"name": "devtrack",
"version": "0.2.0",
"private": true,
"scripts": {
"dev": "next dev --webpack",
"validate-env": "node scripts/validate-env.js",
"build": "npm run validate-env && next build --webpack && node scripts/copy-standalone-static.js && node scripts/check-pwa.mjs",
"start": "next start",
"lint": "eslint src",
"type-check": "tsc --noEmit",
"test": "vitest run",
"test:coverage": "vitest run --coverage",
"test:e2e": "playwright test",
"supabase:generate-types": "node scripts/generate-database-types.cjs",
"prepare": "husky",
"test:node": "node --experimental-strip-types --test test/*.test.js test/*.test.mjs",
"test:all": "npm test && npm run test:node",
"security:env": "node scripts/check-env-security.js",
"test:db": "node scripts/check-database.cjs && node scripts/generate-database-types.cjs --check && node scripts/check-database-contracts.cjs",
"api:generate": "node scripts/sync-openapi.cjs",
"api:check": "node scripts/sync-openapi.cjs --check",
"security:audit": "node scripts/security-audit.cjs"
},
"dependencies": {
"@anthropic-ai/sdk": "^0.107.0",
"@ducanh2912/next-pwa": "^10.2.9",
"@google/generative-ai": "^0.24.1",
"@sentry/nextjs": "^10",
"@supabase/ssr": "^0.12.0",
"@supabase/supabase-js": "^2.106.2",
"@swc/helpers": "^0.5.23",
"@upstash/redis": "^1.38.0",
"@vercel/analytics": "^2.0.1",
"@vercel/speed-insights": "^2.0.0",
"canvas-confetti": "^1.9.4",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"date-fns": "^3.6.0",
"dompurify": "^3.4.16",
"driver.js": "^1.6.0",
"fflate": "^0.8.3",
"groq-sdk": "^1.3.0",
"html-to-image": "^1.11.13",
"idb-keyval": "^6.2.6",
"jspdf": "^4.2.1",
"jspdf-autotable": "^5.0.7",
"lucide-react": "^0.577.0",
"next": "~16.3.8",
"next-auth": "^4.24.15",
"next-intl": "^4.13.0",
"qrcode.react": "^4.2.0",
"react": "^18",
"react-dom": "^18",
"react-markdown": "^10.1.0",
"recharts": "^2.15.4",
"rehype-sanitize": "^6.0.0",
"server-only": "^0.0.1",
"sharp": "^0.35.5",
"sonner": "^2.0.7",
"swagger-ui-react": "5.32.6",
"tailwind-merge": "^3.6.0"
},
"lint-staged": {
"*.{js,jsx,ts,tsx}": [
"eslint --fix",
"prettier --write"
],
"*.{json,css,md}": [
"prettier --write"
]
},
"devDependencies": {
"@electric-sql/pglite": "0.5.8",
"@emnapi/core": "^1.11.0",
"@emnapi/runtime": "^1.11.0",
"@next/env": "16.3.8",
"@playwright/test": "1.61.1",
"@testing-library/dom": "^10.4.1",
"@testing-library/jest-dom": "^6.9.1",
"@testing-library/react": "^16.3.2",
"@types/canvas-confetti": "^1.9.0",
"@types/dompurify": "^3.0.5",
"@types/node": "^22",
"@types/react": "^18",
"@types/react-dom": "^18",
"@types/swagger-ui-react": "^5.18.0",
"@typescript-eslint/eslint-plugin": "^8.62.1",
"@typescript-eslint/parser": "^8.62.1",
"@vitest/coverage-v8": "^4.1.11",
"autoprefixer": "^10.5.2",
"eslint": "^9.39.4",
"eslint-config-next": "16.3.8",
"husky": "^9.1.7",
"js-yaml": "^4.3.2",
"jsdom": "^29.1.1",
"lint-staged": "^17.2.0",
"postcss": "^8.5.23",
"prettier": "^3.9.6",
"tailwind-scrollbar": "^3.1.0",
"tailwindcss": "^3.4.1",
"tree-sitter": "^0.25.0",
"typescript": "^6",
"vitest": "^4.1.11",
"web-tree-sitter": "^0.26.10"
},
"engines": {
"node": ">=22.12 <23"
},
"optionalDependencies": {
"@esbuild/linux-x64": "^0.28.0",
"@img/sharp-linux-x64": "^0.35.1",
"@parcel/watcher-darwin-arm64": "^2.5.6",
"@parcel/watcher-darwin-x64": "^2.5.6",
"@parcel/watcher-linux-x64-glibc": "^2.5.6",
"@parcel/watcher-linux-x64-musl": "^2.5.6",
"@swc/core-linux-x64-gnu": "^1.15.43"
},
"packageManager": "pnpm@11.13.1"
}