Repository navigation
Expand file tree
/
Copy pathpackage.json
More file actions
101 lines (101 loc) · 3.15 KB
/
Copy pathpackage.json
File metadata and controls
101 lines (101 loc) · 3.15 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
{
"name": "siliconharbour.dev",
"private": true,
"type": "module",
"scripts": {
"build": "tsx scripts/generate-theme.ts && react-router build",
"dev": "tsx scripts/generate-theme.ts && tsx watch server.ts",
"dev:preview": "bash scripts/dev-preview.sh",
"start": "NODE_ENV=production tsx server.ts",
"lint": "oxlint",
"lint:fix": "oxlint --fix",
"fmt": "oxfmt",
"fmt:check": "oxfmt --check",
"typecheck": "react-router typegen && tsc",
"db:generate": "drizzle-kit generate",
"db:migrate": "tsx scripts/migrate.ts",
"db:push": "drizzle-kit push",
"db:studio": "drizzle-kit studio",
"create-user": "tsx scripts/create-user.ts",
"importers:validate": "tsx scripts/validate-importer-html-parsers.ts",
"sync-prod": "tsx scripts/sync-prod.ts",
"backup-prod": "tsx scripts/sync-prod.ts backup",
"migrate-prod": "tsx scripts/migrate-prod.ts",
"push-prod-db": "tsx scripts/sync-prod.ts push",
"test": "vitest run",
"test:watch": "vitest",
"coverage": "vitest run --coverage",
"knip": "react-router typegen && knip"
},
"dependencies": {
"@base-ui/react": "^1.9.0",
"@discordjs/rest": "^2.6.3",
"@mdx-js/react": "^3.1.1",
"@mdx-js/rollup": "^3.1.1",
"@modelcontextprotocol/express": "^2.0.2",
"@modelcontextprotocol/node": "^2.1.2",
"@modelcontextprotocol/server": "^2.4.0",
"@octokit/plugin-retry": "^8.1.1",
"@octokit/plugin-throttling": "^11.0.5",
"@opencode-ai/codemode": "1.18.4",
"@react-router/express": "8.5.1",
"@react-router/node": "8.5.1",
"@react-router/serve": "8.5.1",
"@rehookify/datepicker": "^6.6.8",
"acorn": "8.19.0",
"bcrypt": "^6.0.0",
"better-sqlite3": "^13.0.3",
"culori": "^4.0.2",
"date-fns": "^4.4.0",
"date-fns-tz": "^3.2.0",
"discord-api-types": "^0.38.58",
"drizzle-orm": "^0.45.4",
"effect": "4.0.0-beta.101",
"express": "^5.3.0",
"ics": "^3.12.1",
"ipaddr.js": "^2.5.0",
"isbot": "^5.2.3",
"jszip": "^3.10.2",
"linkedom": "^0.18.15",
"octokit": "^5.0.5",
"p-limit": "^7.3.3",
"react": "^19.3.1",
"react-day-picker": "^10.0.2",
"react-dom": "^19.3.1",
"react-image-crop": "^11.1.2",
"react-markdown": "^10.1.0",
"react-router": "8.5.1",
"rehype-pretty-code": "^0.14.6",
"remark-frontmatter": "^5.0.0",
"remark-gfm": "^4.0.1",
"remark-mdx-frontmatter": "^6.0.0",
"satori": "^0.63.2",
"sharp": "^0.35.5",
"shiki": "^4.6.0",
"tsx": "^4.23.15",
"uuid": "^14.0.3",
"zod": "^4.6.7"
},
"devDependencies": {
"@react-router/dev": "8.5.1",
"@tailwindcss/vite": "^4.3.5",
"@types/bcrypt": "^6.0.0",
"@types/better-sqlite3": "^9.6.0",
"@types/culori": "^4.0.1",
"@types/express": "^5.0.6",
"@types/node": "^26.6.6",
"@types/react": "^19.3.0",
"@types/react-dom": "^19.3.0",
"@vitest/coverage-v8": "^5.1.0",
"drizzle-kit": "^0.31.11",
"knip": "6.45.0",
"node-gyp": "^13.1.0",
"oxfmt": "^0.78.0",
"oxlint": "^1.93.0",
"tailwindcss": "^4.3.5",
"typescript": "^7.0.2",
"vite": "^8.3.7",
"vitest": "^5.1.0"
},
"packageManager": "pnpm@12.18.0"
}