-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathpackage.json
More file actions
61 lines (61 loc) · 3.67 KB
/
package.json
File metadata and controls
61 lines (61 loc) · 3.67 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
{
"name": "derby-timer",
"module": "src/index.ts",
"type": "module",
"private": true,
"scripts": {
"start": "bun --hot src/index.ts",
"rehearsal:race-day": "bun run scripts/race-day-rehearsal.ts",
"seed:mid-race": "bun run scripts/seed-mid-race.ts",
"seed:complete": "bun run scripts/seed-complete.ts",
"clear:derbies": "bun run scripts/clear-derbies.ts",
"serial:k1": "bun run src/electronics/k1-serial.ts",
"serial:k1:harness": "bun run src/electronics/k1-harness.ts",
"serial:k1:probe": "bun run src/electronics/k1-probe.ts",
"test": "bun test ./tests && bun run test:integration",
"test:all": "bun run test && bun run test:ui && bun run test:ui:auth && bun run test:ui:private",
"test:unit": "bun test ./tests",
"test:integration": "bun run test:integration:api && bun run test:integration:auth",
"test:integration:api": "DERBY_DB_PATH=test-integration.db PORT=3099 bun src/index.ts & until curl -sf http://localhost:3099/api/events > /dev/null; do sleep 0.2; done && PORT=3099 bun test $(find ./tests -name '*.integration.ts' ! -name 'auth.integration.ts'); EXIT_CODE=$?; kill $!; rm -f test-integration.db; exit $EXIT_CODE",
"test:integration:auth": "DERBY_DB_PATH=test-auth.db DERBY_ADMIN_KEY=test-secret DERBY_VIEWER_KEY=test-viewer PORT=3098 bun src/index.ts & until curl -sf http://localhost:3098/admin/status > /dev/null; do sleep 0.2; done && PORT=3098 bun test ./tests/auth.integration.ts; EXIT_CODE=$?; kill $!; rm -f test-auth.db; exit $EXIT_CODE",
"test:ui": "DERBY_DB_PATH=test-ui.db PORT=3001 bun src/index.ts & until curl -sf http://localhost:3001/api/events > /dev/null; do sleep 0.2; done && bunx playwright test --project=chromium; EXIT_CODE=$?; kill $!; rm -f test-ui.db; exit $EXIT_CODE",
"test:ui:auth": "DERBY_DB_PATH=test-ui-auth.db DERBY_ADMIN_KEY=test-secret PORT=3002 bun src/index.ts & until curl -sf http://localhost:3002/admin/status > /dev/null; do sleep 0.2; done && bunx playwright test --project=auth; EXIT_CODE=$?; kill $!; rm -f test-ui-auth.db; exit $EXIT_CODE",
"test:ui:private": "DERBY_DB_PATH=test-ui-private.db DERBY_ADMIN_KEY=test-admin DERBY_VIEWER_KEY=test-viewer PORT=3003 bun src/index.ts & until curl -sf http://localhost:3003/admin/status > /dev/null; do sleep 0.2; done && bunx playwright test --project=private; EXIT_CODE=$?; kill $!; rm -f test-ui-private.db; exit $EXIT_CODE",
"screenshots": "DERBY_DB_PATH=screenshot.db PORT=3001 bun src/index.ts & until curl -sf http://localhost:3001/api/events > /dev/null; do sleep 0.2; done && bunx playwright test --project=screenshots; EXIT_CODE=$?; kill $!; rm -f screenshot.db; exit $EXIT_CODE"
},
"devDependencies": {
"@types/bun": "latest",
"@types/react": "^19.2.10",
"@types/react-dom": "^19.2.3"
},
"peerDependencies": {
"typescript": "^5"
},
"dependencies": {
"@playwright/test": "^1.57.0",
"@radix-ui/react-checkbox": "^1.3.3",
"@radix-ui/react-dialog": "^1.1.15",
"@radix-ui/react-dropdown-menu": "^2.1.16",
"@radix-ui/react-label": "^2.1.8",
"@radix-ui/react-select": "^2.2.6",
"@radix-ui/react-separator": "^1.1.8",
"@radix-ui/react-slot": "^1.2.4",
"@radix-ui/react-switch": "^1.2.6",
"@radix-ui/react-tabs": "^1.1.13",
"@radix-ui/react-tooltip": "^1.2.8",
"agent-browser": "^0.6.0",
"bun-plugin-tailwind": "^0.1.2",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"lucide-react": "^0.563.0",
"opencode-ai": "^1.1.45",
"react": "^19.2.4",
"react-dom": "^19.2.4",
"react-router-dom": "^7.13.1",
"serialport": "^13.0.0",
"tailwind-merge": "^3.4.0",
"tailwindcss": "^4.1.18",
"tw-animate-css": "^1.4.0",
"umzug": "^3.8.2"
}
}