Repository navigation
Expand file tree
/
Copy pathpackage.json
More file actions
99 lines (99 loc) · 3.38 KB
/
Copy pathpackage.json
File metadata and controls
99 lines (99 loc) · 3.38 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
{
"name": "subway",
"description": "A browser-based IRC client",
"keywords": [
"irc"
],
"author": "David Petersen <davjpetersen@gmail.com>",
"version": "0.4.0",
"type": "module",
"main": "./dist/server/index.js",
"bin": {
"subway": "./dist/server/index.js"
},
"engines": {
"node": ">=18.0.0"
},
"dependencies": {
"@prisma/client": "^5.22.0",
"@tanstack/react-virtual": "^3.13.17",
"bcrypt": "^5.1.1",
"cookie-parser": "^1.4.6",
"cors": "^2.8.5",
"dotenv": "^16.4.5",
"ejs": "^3.1.10",
"express": "^4.19.2",
"express-rate-limit": "^7.4.1",
"helmet": "^8.0.0",
"immer": "^11.1.3",
"irc": "^0.5.2",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"socket.io": "^4.7.5",
"uuid": "^9.0.1",
"winston": "^3.15.0",
"zod": "^3.23.8",
"zustand": "^5.0.9"
},
"devDependencies": {
"@tailwindcss/postcss": "^4.1.18",
"@types/bcrypt": "^5.0.2",
"@types/cookie-parser": "^1.4.7",
"@types/cors": "^2.8.17",
"@types/ejs": "^3.1.5",
"@types/express": "^4.17.21",
"@types/node": "^22.9.0",
"@types/react": "^19.2.7",
"@types/react-dom": "^19.2.3",
"@types/uuid": "^10.0.0",
"@vitejs/plugin-react": "^5.1.2",
"autoprefixer": "^10.4.23",
"chai": "^4.5.0",
"concurrently": "^9.2.1",
"eslint": "^8.57.1",
"mocha": "^10.7.3",
"nyc": "^17.1.0",
"postcss": "^8.5.6",
"prisma": "^5.22.0",
"proxyquire": "^2.1.3",
"sinon": "^19.0.2",
"socket.io-client": "^4.8.3",
"supertest": "^7.0.0",
"tailwindcss": "^4.1.18",
"tsc-alias": "^1.8.16",
"tsconfig-paths": "^4.2.0",
"tsx": "^4.19.2",
"typescript": "^5.6.3",
"vite": "^7.3.0"
},
"scripts": {
"dev": "npm run dev:server",
"dev:server": "tsx watch --tsconfig tsconfig.server.json src/server/index.ts",
"dev:client": "vite --config vite.config.ts",
"dev-all": "concurrently -n server,client -c blue,green \"npm run dev:server\" \"npm run dev:client\"",
"build": "npm run build:server && npm run build:client",
"build:server": "tsc -p tsconfig.server.json && tsc-alias -p tsconfig.server.json",
"build:client": "vite build --config vite.config.ts",
"start": "node dist/server/index.js",
"start:legacy": "./subway.js",
"preview": "vite preview --config vite.config.ts",
"db:generate": "prisma generate",
"db:migrate": "prisma migrate dev",
"db:migrate:prod": "prisma migrate deploy",
"db:push": "prisma db push",
"db:studio": "prisma studio",
"test": "mocha test/**/*.test.js --timeout 10000",
"test:unit": "mocha test/unit/**/*.test.js",
"test:integration": "mocha test/integration/**/*.test.js --timeout 10000",
"test:watch": "mocha test/**/*.test.js --watch",
"test:coverage": "nyc --reporter=html --reporter=lcov --reporter=text npm test",
"lint": "eslint '**/*.js' '**/*.ts' '**/*.tsx' --ignore-pattern 'node_modules/' --ignore-pattern 'tmp/' --ignore-pattern 'coverage/' --ignore-pattern 'dist/'",
"lint:fix": "npm run lint -- --fix",
"type-check": "tsc -b",
"type-check:server": "tsc -p tsconfig.server.json --noEmit",
"type-check:client": "tsc -p tsconfig.client.json --noEmit",
"audit:check": "npm audit --audit-level=moderate",
"ci": "npm run type-check && npm run lint && npm run test:coverage && npm run audit:check",
"validate": "npm run type-check && npm run lint && npm test"
}
}