-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpackage.json
More file actions
145 lines (145 loc) · 7.61 KB
/
Copy pathpackage.json
File metadata and controls
145 lines (145 loc) · 7.61 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
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
{
"name": "oche",
"private": true,
"version": "1.0.0",
"description": "Oche - Game Session Dashboard (501 Cloud Developer take-home). React SPA + Hono API + Neon Postgres (RLS) on Cloudflare.",
"license": "MIT",
"type": "module",
"engines": {
"node": ">=22"
},
"workspaces": [
"apps/*",
"packages/*",
"services/*"
],
"scripts": {
"dev": "concurrently -n web,api -c blue,magenta \"npm:dev:web\" \"npm:dev:api\"",
"dev:web": "npm run dev -w apps/web",
"dev:api": "node scripts/wrangler-dev.mjs",
"preview": "npm run preview -w apps/web",
"build": "npm run build --workspaces --if-present",
"build:web": "npm run build -w apps/web",
"build:web:staging": "node scripts/build-web.mjs staging",
"build:web:prod": "node scripts/build-web.mjs production",
"build:api": "npm run build -w apps/api",
"build:shared": "npm run build -w packages/shared",
"typecheck": "tsc -b --pretty",
"lint": "eslint .",
"lint:fix": "eslint . --fix",
"format": "prettier --write .",
"format:check": "prettier --check .",
"prose:check": "node scripts/prose-check.mjs",
"check": "npm run typecheck && npm run lint && npm run format:check && npm run prose:check && npm run test:unit && npm run size",
"test": "npm run test:unit",
"test:unit": "vitest run",
"test:unit:watch": "vitest",
"test:integration": "vitest run -c vitest.integration.config.ts",
"test:rls": "vitest run -c vitest.rls.config.ts",
"test:contracts": "vitest run tests/contracts",
"test:e2e": "playwright test",
"test:a11y": "playwright test --grep @a11y",
"test:visual": "playwright test --grep @visual",
"coverage": "vitest run --coverage",
"test:ci": "npm run typecheck && npm run coverage && npm run test:rls && npm run test:a11y && npm run test:e2e && npm run test:visual",
"setup": "node scripts/setup.mjs",
"setup:env": "node scripts/env-setup.mjs env init",
"setup:env:merge": "node scripts/env-setup.mjs env merge",
"setup:dev-vars": "node scripts/env-setup.mjs dev-vars init",
"setup:dev-vars:merge": "node scripts/env-setup.mjs dev-vars merge",
"setup:dev-vars:sync": "node scripts/env-setup.mjs dev-vars sync",
"keys:generate": "node scripts/generate-keys.mjs",
"keys:show": "node scripts/generate-keys.mjs --show",
"db:generate": "npm run db:generate -w packages/db",
"db:migrate": "npm run db:migrate -w packages/db",
"db:force-rls": "npm run db:force-rls -w packages/db",
"db:force-rls:staging": "node scripts/with-env.mjs DATABASE_URL_STAGING npm run db:force-rls -w packages/db",
"db:force-rls:prod": "node scripts/with-env.mjs DATABASE_URL_PROD npm run db:force-rls -w packages/db",
"db:prepare": "node scripts/run-steps.mjs db:migrate db:force-rls db:seed",
"db:migrate:staging": "node scripts/with-env.mjs DATABASE_URL_STAGING npm run db:migrate -w packages/db",
"db:migrate:prod": "node scripts/with-env.mjs DATABASE_URL_PROD npm run db:migrate -w packages/db",
"db:studio": "npm run db:studio -w packages/db",
"db:seed": "npm run db:seed -w packages/db",
"db:seed:staging": "node scripts/with-env.mjs DATABASE_URL_STAGING npm run db:seed -w packages/db",
"db:seed:prod": "node scripts/with-env.mjs DATABASE_URL_PROD npm run db:seed -w packages/db",
"db:reset": "npm run db:reset -w packages/db",
"db:rls:check": "node scripts/rls-check.mjs",
"db:rls:check:staging": "node scripts/with-env.mjs DATABASE_URL_STAGING node scripts/rls-check.mjs",
"db:rls:check:prod": "node scripts/with-env.mjs DATABASE_URL_PROD node scripts/rls-check.mjs",
"deploy:staging": "node scripts/run-steps.mjs db:migrate:staging deploy:api:staging build:web:staging deploy:web:staging",
"deploy:staging:full": "node scripts/run-steps.mjs db:migrate:staging db:force-rls:staging db:rls:check:staging db:seed:staging deploy:staging",
"deploy:prod": "node scripts/run-steps.mjs db:migrate:prod deploy:api:prod build:web:prod deploy:web:prod",
"deploy:prod:full": "node scripts/run-steps.mjs db:migrate:prod db:force-rls:prod db:rls:check:prod db:seed:prod deploy:prod",
"deploy:all": "node scripts/run-steps.mjs deploy:staging deploy:prod",
"deploy:api:staging": "npm run deploy -w apps/api -- --env staging",
"deploy:api:prod": "npm run deploy -w apps/api -- --env production",
"deploy:web:staging": "npm run build:web:staging && npm run deploy:staging -w apps/web",
"deploy:web:prod": "npm run build:web:prod && npm run deploy:prod -w apps/web",
"deploy:preview": "npm run deploy:preview -w apps/web",
"changeset": "changeset",
"version:changeset": "changeset version",
"release": "node scripts/release.mjs",
"release:current": "node scripts/release.mjs --current",
"release:patch": "node scripts/release.mjs --patch",
"release:minor": "node scripts/release.mjs --minor",
"release:major": "node scripts/release.mjs --major",
"release:initial": "node scripts/release.mjs --initial",
"release:dry-run": "node scripts/release.mjs --patch --dry-run",
"version:sync": "node scripts/sync-version-pins.mjs",
"loc": "node scripts/loc.mjs",
"stats": "node scripts/stats.mjs",
"rules:sync": "node scripts/rules-sync.mjs",
"rules:check": "node scripts/rules-sync.mjs --check",
"git:sync-branches": "node scripts/sync-branches-from-master.mjs",
"git:sync-branches:push": "node scripts/sync-branches-from-master.mjs --push",
"docs:api": "typedoc",
"export:openapi": "node scripts/export-openapi.mjs",
"icons:generate": "node scripts/generate-icons.mjs",
"size": "node scripts/size.mjs",
"doctor": "node scripts/doctor.mjs",
"pages:domains": "node scripts/pages-domains.mjs all",
"pages:domains:staging": "node scripts/pages-domains.mjs staging",
"pages:domains:prod": "node scripts/pages-domains.mjs production",
"dns:setup": "node scripts/dns-setup.mjs all",
"dns:setup:staging": "node scripts/dns-setup.mjs staging",
"dns:setup:prod": "node scripts/dns-setup.mjs production",
"deploy:domains": "node scripts/deploy-domains.mjs all",
"deploy:domains:staging": "node scripts/deploy-domains.mjs staging",
"deploy:domains:prod": "node scripts/deploy-domains.mjs production",
"cf:sync": "node scripts/cf-sync-env.mjs all",
"cf:sync:staging": "node scripts/cf-sync-env.mjs staging",
"cf:sync:prod": "node scripts/cf-sync-env.mjs production",
"cf:sync:dry": "node scripts/cf-sync-env.mjs all --dry-run",
"verify:urls": "node scripts/verify-deploy-urls.mjs all",
"verify:urls:staging": "node scripts/verify-deploy-urls.mjs staging",
"verify:urls:prod": "node scripts/verify-deploy-urls.mjs production",
"media:transcode": "node scripts/transcode-local.mjs",
"clean": "rm -rf **/dist **/.turbo coverage playwright-report test-results",
"reset": "npm run clean && rm -rf node_modules **/node_modules && npm install",
"banner": "node scripts/banner.mjs",
"ship-it": "npm run check && node scripts/banner.mjs --ship",
"postinstall": "node scripts/banner.mjs --quiet || true"
},
"devDependencies": {
"@axe-core/playwright": "^4.12.1",
"@eslint/js": "^9.17.0",
"@playwright/test": "^1.49.0",
"@testing-library/jest-dom": "^6.6.3",
"@testing-library/react": "^16.1.0",
"@testing-library/user-event": "^14.5.2",
"@types/node": "^26.1.0",
"@vitest/coverage-v8": "^2.1.0",
"concurrently": "^10.0.3",
"dotenv": "^17.4.2",
"eslint": "^9.17.0",
"globals": "^17.7.0",
"jsdom": "^25.0.1",
"prettier": "^3.4.0",
"sharp": "^0.33.5",
"to-ico": "^1.1.5",
"typedoc": "^0.27.0",
"typescript": "^5.7.0",
"typescript-eslint": "^8.18.0",
"vitest": "^2.1.0"
}
}