Repository navigation
Expand file tree
/
Copy pathpackage.json
More file actions
81 lines (81 loc) · 2.83 KB
/
Copy pathpackage.json
File metadata and controls
81 lines (81 loc) · 2.83 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
{
"name": "myip",
"private": true,
"version": "7.4.0",
"type": "module",
"packageManager": "pnpm@11.22.0",
"scripts": {
"dev": "concurrently \"vite\" \"nodemon --import ./sentry-instrument.js backend-server.js\"",
"build": "vite build",
"postbuild": "node -e \"const{existsSync}=require('fs');const{spawnSync}=require('child_process');if(existsSync('scripts/purge-index-cache.js')){const r=spawnSync(process.execPath,['scripts/purge-index-cache.js'],{stdio:'inherit'});process.exit(r.status??1)}\"",
"test": "node --test tests/*.test.js",
"check": "pnpm run test && pnpm run build",
"preview": "vite preview",
"start-backend": "node --import ./sentry-instrument.js backend-server.js",
"start-frontend": "node frontend-server.js",
"start": "concurrently \"node frontend-server.js\" \"node --import ./sentry-instrument.js backend-server.js\"",
"purge-index": "node scripts/purge-index-cache.js",
"fetch-favicons": "node scripts/fetch-favicons.js",
"i18n-status": "node scripts/i18n-status.js",
"i18n-new": "node scripts/i18n-scaffold.js new",
"i18n-sync": "node scripts/i18n-scaffold.js sync"
},
"dependencies": {
"@cloudflare/speedtest": "^1.13.1",
"@iconify-json/circle-flags": "^1.2.10",
"@iconify/vue": "^5.0.1",
"@khmyznikov/pwa-install": "^0.6.4",
"@lucide/vue": "^1.33.0",
"@photostructure/tz-lookup": "^11.6.1",
"@sentry/node": "^10.70.0",
"@sentry/vue": "^10.70.0",
"@tanstack/vue-table": "^9.1.2",
"@thumbmarkjs/thumbmarkjs": "^1.10.1",
"@vueuse/core": "^14.4.0",
"chart.js": "^4.5.1",
"chartjs-chart-geo": "^4.3.6",
"circle-progress.vue": "^3.4.1",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"concurrently": "^10.0.5",
"country-code-lookup": "^0.1.5",
"dagre": "^0.8.5",
"dotenv": "^17.4.2",
"express": "^5.2.1",
"express-rate-limit": "^8.6.2",
"express-slow-down": "^3.1.0",
"firebase": "^12.18.0",
"html-to-image": "^1.11.13",
"http-proxy-middleware": "^4.2.0",
"maxmind": "^5.0.7",
"pinia": "^4.0.3",
"pino": "^10.3.1",
"pino-http": "^11.0.0",
"pino-pretty": "^13.1.3",
"reka-ui": "^2.10.3",
"tailwind-merge": "^3.6.0",
"tar": "^7.5.22",
"tw-animate-css": "^1.4.0",
"ua-parser-js": "^2.0.10",
"unbzip2-stream": "^1.4.3",
"vaul-vue": "^0.4.1",
"vue": "^3.5.41",
"vue-i18n": "^11.4.8",
"vue-input-otp": "^0.4.0",
"vue-markdown-render": "^2.3.1",
"vue-router": "^5.2.0",
"vue-sonner": "^2.0.9",
"whoiser": "^1.18.0",
"world-atlas": "^2.0.2"
},
"devDependencies": {
"@sentry/vite-plugin": "^5.4.0",
"@tailwindcss/vite": "^4.3.3",
"@vitejs/plugin-vue": "^6.0.8",
"code-inspector-plugin": "^2.0.7",
"nodemon": "^3.1.14",
"tailwindcss": "^4.3.3",
"vconsole": "^3.15.1",
"vite": "^8.2.2"
}
}