Repository navigation
Expand file tree
/
Copy pathpackage.json
More file actions
104 lines (104 loc) · 3.56 KB
/
Copy pathpackage.json
File metadata and controls
104 lines (104 loc) · 3.56 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
{
"name": "tc-mobile",
"version": "1.0.2",
"private": true,
"license": "MIT",
"type": "module",
"description": "translationCore Mobile — offline-first audio notebook/editor PWA for oral Bible translation",
"repository": {
"type": "git",
"url": "git+https://github.com/unfoldingWord/tc-mobile.git"
},
"homepage": "https://github.com/unfoldingWord/tc-mobile#readme",
"scripts": {
"dev": "vite dev",
"dev:lan": "vite dev --host",
"build": "vite build",
"build:e2e": "vite build --mode e2e --outDir dist-e2e",
"build:native": "vite build --mode native",
"preview": "vite preview --host",
"preview:e2e": "vite preview --outDir dist-e2e --host",
"lint": "eslint . --max-warnings 0",
"lint:fix": "eslint . --fix",
"format": "prettier --write .",
"format:check": "prettier --check .",
"typecheck": "tsc -b",
"cap:sync": "npm run build:native && npx cap sync",
"cap:ios": "npx cap open ios",
"cap:android": "npx cap open android",
"test": "vitest run",
"test:coverage": "vitest run --coverage --testTimeout=120000 --hookTimeout=120000",
"test:dist": "node scripts/test-dist.mjs",
"test:dist:native": "npm run build:native && node scripts/test-dist-native.mjs",
"test:watch": "vitest",
"test:e2e": "npm run build && npm run build:e2e && playwright test",
"verify": "npm run check:prepush && npm run format:check && npm run lint && npm run knip && npm run typecheck && npm run typecheck:lib && npm run test && npm run build && npm run test:dist",
"deploy": "npm run build && wrangler deploy",
"deploy:staging": "npm run build && wrangler deploy --env staging",
"prepare": "husky",
"knip": "knip --include dependencies,unlisted,files,exports,types",
"typecheck:lib": "tsc -p tsconfig.lib.json",
"check:deploy": "node scripts/check-deploy.mjs",
"check:deploy:prod": "node scripts/check-deploy-prod.mjs",
"check:commit-msg": "node scripts/check-commit-messages.mjs",
"check:prepush": "node scripts/prepush-check.mjs"
},
"lint-staged": {
"*.{js,jsx,ts,tsx,mjs}": [
"eslint --fix",
"prettier --write"
],
"*.{json,css,md}": [
"prettier --write"
]
},
"dependencies": {
"@breezystack/lamejs": "^1.2.7",
"@capacitor/android": "8.5.2",
"@capacitor/app": "8.1.1",
"@capacitor/core": "8.5.2",
"@capacitor/filesystem": "8.1.3",
"@capacitor/ios": "8.5.2",
"@capacitor/share": "8.0.2",
"clsx": "^2.1.1",
"fflate": "^0.8.3",
"idb": "^8.0.3",
"react": "^19.3.0",
"react-dom": "^19.3.0",
"tailwind-merge": "^3.7.0"
},
"devDependencies": {
"@capacitor/cli": "8.5.2",
"@eslint/js": "^9.39.2",
"@oxc-project/runtime": "0.150.0",
"@playwright/test": "^1.63.0",
"@tailwindcss/postcss": "^4.1.18",
"@types/jsdom": "30.0.0",
"@types/node": "^26.6.3",
"@types/react": "^19.3.0",
"@types/react-dom": "^19.3.0",
"@vitejs/plugin-react": "^6.1.2",
"@vitest/coverage-v8": "5.0.2",
"eslint": "^10.11.0",
"eslint-plugin-react-hooks": "^7.1.0",
"eslint-plugin-react-refresh": "^0.5.7",
"fake-indexeddb": "^6.2.5",
"husky": "^9.1.7",
"jsdom": "30.1.1",
"knip": "^6.38.0",
"lint-staged": "^17.6.0",
"prettier": "^3.9.9",
"prettier-plugin-tailwindcss": "^0.8.1",
"sharp": "^0.35.5",
"tailwindcss": "^4.1.18",
"typescript": "^5.9.3",
"typescript-eslint": "^8.71.0",
"vite": "^8.3.1",
"vite-plugin-pwa": "^1.3.0",
"vitest": "^5.0.2",
"wrangler": "^4.144.0"
},
"engines": {
"node": "^22.22.2 || ^24.15.0 || >=26.0.0"
}
}