-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpackage.json
More file actions
123 lines (123 loc) · 7.43 KB
/
Copy pathpackage.json
File metadata and controls
123 lines (123 loc) · 7.43 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
{
"name": "showbook",
"private": true,
"license": "MIT",
"packageManager": "pnpm@10.33.4",
"engines": {
"node": ">=22",
"pnpm": ">=9"
},
"scripts": {
"dev": "nx dev web",
"build": "nx build web",
"lint": "nx run-many -t lint",
"typecheck": "nx run-many -t typecheck",
"dev:db:generate": "export DATABASE_URL=\"${DEV_DATABASE_URL:-postgresql://showbook:showbook_dev@localhost:5433/showbook}\" && node scripts/guard-not-prod-db.mjs && pnpm --filter @showbook/db drizzle-kit generate",
"dev:db:migrate": "export DATABASE_URL=\"${DEV_DATABASE_URL:-postgresql://showbook:showbook_dev@localhost:5433/showbook}\" && node scripts/guard-not-prod-db.mjs && pnpm --filter @showbook/db drizzle-kit migrate",
"dev:db:create:e2e": "docker compose -f infra/docker-compose.yml exec -T db sh -c \"psql -U showbook -d showbook -tAc \\\"SELECT 1 FROM pg_database WHERE datname = 'showbook_e2e'\\\" | grep -q 1 || createdb -U showbook showbook_e2e\"",
"dev:db:reset:e2e": "docker compose -f infra/docker-compose.yml exec -T db sh -c \"psql -U showbook -d showbook -c 'DROP DATABASE IF EXISTS showbook_e2e WITH (FORCE);' && psql -U showbook -d showbook -c 'CREATE DATABASE showbook_e2e;'\"",
"dev:db:migrate:e2e": "export DATABASE_URL=\"${E2E_DATABASE_URL:-postgresql://showbook:showbook_dev@localhost:5433/showbook_e2e}\" && node scripts/guard-not-prod-db.mjs && pnpm --filter @showbook/db drizzle-kit migrate",
"dev:db:prepare:e2e": "pnpm dev:db:reset:e2e && pnpm dev:db:migrate:e2e && export DATABASE_URL=\"${E2E_DATABASE_URL:-postgresql://showbook:showbook_dev@localhost:5433/showbook_e2e}\" && node scripts/guard-not-prod-db.mjs && pnpm --filter @showbook/jobs bootstrap-pgboss",
"dev:db:studio": "export DATABASE_URL=\"${DEV_DATABASE_URL:-postgresql://showbook:showbook_dev@localhost:5433/showbook}\" && node scripts/guard-not-prod-db.mjs && pnpm --filter @showbook/db drizzle-kit studio",
"test:e2e": "pnpm dev:db:prepare:e2e && nx run web:test:e2e",
"test:integration": "pnpm dev:db:prepare:e2e && export DATABASE_URL=\"${E2E_DATABASE_URL:-postgresql://showbook:showbook_dev@localhost:5433/showbook_e2e}\" && node scripts/guard-not-prod-db.mjs && nx run-many -t test:integration --parallel=1",
"test:integration:coverage": "pnpm dev:db:prepare:e2e && export DATABASE_URL=\"${E2E_DATABASE_URL:-postgresql://showbook:showbook_dev@localhost:5433/showbook_e2e}\" && node scripts/guard-not-prod-db.mjs && nx run-many -t test:integration:coverage --parallel=1",
"test:unit": "nx run-many -t test",
"test:coverage": "nx run-many -t test:coverage",
"verify": "bash scripts/verify.sh",
"verify:e2e": "bash scripts/verify.sh --e2e",
"verify:coverage": "bash scripts/verify-coverage.sh",
"email:smoke": "pnpm --filter @showbook/jobs run email:smoke",
"email:preview": "pnpm --filter @showbook/emails dev",
"dev:up": "node scripts/migrate-local-certs.mjs && docker compose -f infra/docker-compose.yml up -d",
"dev:down": "docker compose -f infra/docker-compose.yml down",
"dev:build": "node scripts/migrate-local-certs.mjs && docker compose -f infra/docker-compose.yml up -d --build",
"dev:logs": "docker compose -f infra/docker-compose.yml logs -f web",
"prod:up": "docker compose --env-file .env.prod -f infra/docker-compose.prod.yml pull web && docker compose --env-file .env.prod -f infra/docker-compose.prod.yml up -d",
"prod:up:build": "docker compose --env-file .env.prod -f infra/docker-compose.prod.yml up -d --build",
"prod:down": "docker compose --env-file .env.prod -f infra/docker-compose.prod.yml down",
"prod:logs": "docker compose --env-file .env.prod -f infra/docker-compose.prod.yml logs -f web",
"prod:db:migrate": "docker compose --env-file .env.prod -f infra/docker-compose.prod.yml exec web pnpm --filter @showbook/db drizzle-kit migrate",
"prod:db:backup": "mkdir -p backups && docker compose --env-file .env.prod -f infra/docker-compose.prod.yml exec -T db pg_dump --format=custom --no-owner --no-acl -U showbook_prod showbook_prod > \"backups/pre-migrate-${DEPLOY_SHA:-$(date -u +%Y%m%dT%H%M%SZ)}.dump\"",
"prod:health:ready": "curl -fsS --retry 12 --retry-delay 5 --retry-all-errors http://127.0.0.1:3002/api/health/ready",
"e2e:up": "docker compose --env-file .env.e2e -f infra/docker-compose.e2e.yml up -d",
"e2e:up:build": "docker compose --env-file .env.e2e -f infra/docker-compose.e2e.yml up -d --build",
"e2e:down": "docker compose --env-file .env.e2e -f infra/docker-compose.e2e.yml down",
"e2e:logs": "docker compose --env-file .env.e2e -f infra/docker-compose.e2e.yml logs -f web",
"e2e:db:migrate": "docker compose --env-file .env.e2e -f infra/docker-compose.e2e.yml exec web pnpm --filter @showbook/db drizzle-kit migrate",
"prod:query": "node scripts/prod-query.mjs",
"db:check-duplicates": "node scripts/check-external-id-duplicates.mjs",
"mint:e2e-token": "node scripts/mint-e2e-token.mjs",
"mobile:start": "pnpm --filter mobile start",
"mobile:start:dev-client": "pnpm --filter mobile start:dev-client",
"mobile:start:go": "pnpm --filter mobile start:go",
"mobile:trust-localhost-cert": "node scripts/trust-ios-localhost-cert.mjs",
"mobile:ios": "pnpm --filter mobile ios",
"mobile:ios:dev": "pnpm --filter mobile ios:dev",
"mobile:ios:go": "pnpm --filter mobile ios:go",
"mobile:android": "pnpm --filter mobile android",
"mobile:android:dev": "pnpm --filter mobile android:dev",
"mobile:android:go": "pnpm --filter mobile android:go",
"mobile:typecheck": "pnpm --filter mobile typecheck",
"mobile:lint": "pnpm --filter mobile lint",
"mobile:test": "pnpm --filter mobile test",
"mobile:e2e:ios": "pnpm --filter mobile e2e:ios",
"mobile:e2e:dry": "pnpm --filter mobile e2e:dry",
"mobile:web:build": "pnpm --filter mobile web:build",
"mobile:web:test": "pnpm --filter mobile web:test",
"mobile:web:verify": "pnpm --filter mobile web:verify",
"setup:runner": "bash scripts/setup-runner.sh"
},
"devDependencies": {
"@types/node": "^26.6.3",
"nx": "^23.2.1",
"tsx": "^4.23.15",
"typescript": "~6.0.3"
},
"pnpm": {
"auditConfig": {
"ignoreGhsas": [
"GHSA-w3rx-r6r6-pgpr",
"GHSA-5p2g-fcmc-qvqq"
]
},
"overrides": {
"fast-xml-parser@<5.7.0": "^5.7.0",
"postcss@<8.5.23": "^8.5.23",
"svix@<1.92.2": "^1.92.2",
"nx>minimatch@<9.0.7": "^9.0.7",
"esbuild@<0.28.1": "^0.28.1",
"follow-redirects@<1.16.0": "^1.16.0",
"axios@<1.18.0": "^1.18.0",
"uuid@<14.0.0": "^14.0.0",
"tmp@<0.2.7": "^0.2.7",
"ws@>=8.0.0 <8.21.0": "^8.21.0",
"shell-quote@<1.9.0": "^1.9.0",
"form-data@<4.0.6": "^4.0.6",
"js-yaml@>=4.0.0 <4.3.1": "^4.3.1",
"undici@>=7.0.0 <7.29.0": "^7.29.0",
"@auth/core@<0.41.3": "^0.41.3",
"sharp@<0.35.0": "^0.35.0",
"fast-uri@>=3.0.0 <3.1.5": "^3.1.5",
"brace-expansion@<1.1.18": "^1.1.18",
"brace-expansion@>=3.0.0 <5.0.9": "^5.0.9",
"@babel/core": "7.29.7",
"react": "19.2.3",
"react-dom": "19.2.3",
"react-test-renderer": "19.2.3",
"react-native": "0.86.0",
"react-native-reanimated": "4.5.0",
"react-native-worklets": "0.10.0",
"react-native-screens": "4.25.2",
"react-native-gesture-handler": "~2.32.0",
"react-native-safe-area-context": "~5.7.0",
"@expo/dom-webview": "57.0.0"
},
"onlyBuiltDependencies": [
"esbuild",
"nx",
"sharp",
"unrs-resolver"
]
}
}