Repository navigation
Expand file tree
/
Copy pathpackage.json
More file actions
120 lines (120 loc) · 7.57 KB
/
Copy pathpackage.json
File metadata and controls
120 lines (120 loc) · 7.57 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
{
"name": "forwardx",
"version": "2.3.272",
"description": "ForwardX 多主机端口转发与隧道管理面板",
"license": "AGPL-3.0-only",
"private": true,
"type": "module",
"scripts": {
"dev": "tsx server/index.ts",
"dev:panel": "node scripts/dev-panel.mjs",
"dev:hosts-showcase": "node scripts/dev-panel.mjs",
"build": "vite build && node esbuild.config.mjs",
"build:client": "vite build",
"build:server": "node esbuild.config.mjs",
"mobile:sync": "pnpm mobile:sync:android",
"mobile:sync:android": "pnpm build:client && cap sync android",
"mobile:open": "cap open android",
"mobile:open:android": "cap open android",
"mobile:apk": "pnpm mobile:sync:android && cd android && ./gradlew assembleDebug",
"docs:dev": "vitepress dev docs",
"docs:build": "vitepress build docs",
"docs:preview": "vitepress preview docs",
"test:migration": "node --import tsx --test server/legacyMigration.test.ts",
"test:mimic": "node --import tsx --test server/mimicEnvironment.test.ts server/mimicRuntimeLifecycle.test.ts",
"test:selftest-dispatch": "node --import tsx --test server/forwardTestDispatch.test.ts",
"test:smtp": "node --import tsx --test server/smtpTransport.test.ts",
"pretest:server": "node --import tsx --test server/ruleResourceAuthorization.test.ts server/userTrafficBillingReset.test.ts server/paymentOrderState.test.ts client/src/lib/nginxPemFiles.test.ts",
"test:server": "node --import tsx --test server/panelClock.test.ts server/setupFlow.test.ts server/panelDockerInstaller.test.ts server/lookingGlassAccess.test.ts server/agentCrypto.test.ts server/agentEncryptionMiddleware.test.ts server/agentTrafficRoute.test.ts server/linkAccessView.test.ts server/hostUserSortOrder.test.ts server/hostDdns.test.ts server/smtpTransport.test.ts server/configAudit.test.ts server/dnsRuntimeGeneration.test.ts server/mimicRemovalGuard.test.ts server/supportBundle.test.ts server/agentInstallScripts.test.ts server/agentActionCommands.test.ts server/databaseTransaction.test.ts server/databaseSwitch.test.ts server/trafficBatch.test.ts server/scheduledTask.test.ts server/historyCleanupIndexes.test.ts server/tunnelRuntimeStatus.test.ts server/tunnelExitStrategy.test.ts server/hopTestState.test.ts server/ruleLatency.test.ts server/paginationQueries.test.ts server/agentHeartbeatGate.test.ts server/agentTcpingReportGate.test.ts server/agentUpgradeRollout.test.ts server/agentRuntimeRuleState.test.ts server/latencySeries.test.ts server/latencyAggregation.test.ts server/tunnelAutoLatencyState.test.ts server/tunnelLatencyDetails.test.ts server/tunnelLatencyRefresh.test.ts server/tunnelMultiEntryLatencyState.test.ts server/probeTopology.test.ts server/agentStatusOrdering.test.ts server/agentPanelUrl.test.ts server/agentPluginInventory.test.ts server/ai/client.test.ts server/ai/managePresets.test.ts server/ai/rateLimiter.test.ts server/ai/settings.test.ts server/ai/skills/forwardxCore.test.ts server/asyncPool.test.ts server/authCaptcha.test.ts server/session.test.ts server/loginSessionService.test.ts server/customSidebarPages.test.ts server/dashboardTrafficIdentity.test.ts server/forwardGroupFailover.test.ts server/forwardGroupHealthRecheck.test.ts server/forwardGroupLiveness.test.ts server/forwardGroupListeners.test.ts server/forwardGroupRuleIntegrity.test.ts server/forwardGroupRename.test.ts server/forwardGroupRuntimeStatus.test.ts server/forwardGroupToggle.test.ts server/forwardXWireGuard.test.ts server/gmPay.test.ts server/gostProxyProtocol.test.ts server/gostTunnelProtocol.test.ts server/keyedTaskDispatcher.test.ts server/keyedTaskLock.test.ts server/migration.test.ts server/mysqlLongTextSchema.test.ts server/panelMigrationAgentState.test.ts server/paymentUrls.test.ts server/pluginAgentTasks.test.ts server/pluginPanelApi.test.ts server/pluginSchema.test.ts server/portForwardRuleHosts.test.ts server/portReservations.test.ts server/rulesPortAvailability.test.ts server/ruleQuotaReservations.test.ts server/pluginManifest.test.ts server/tunnelRelay.test.ts server/tunnelRuntimePlan.test.ts shared/latencyProbe.test.ts client/src/lib/agentTokenStatus.test.ts client/src/lib/batchOperations.test.ts client/src/lib/fileDownload.test.ts client/src/lib/ruleEntryDisplay.test.ts client/src/lib/ruleTransfer.test.ts client/src/lib/forwardRuleStatus.test.ts client/src/lib/linkAvailability.test.ts client/src/lib/linkTestNodeMeta.test.ts client/src/lib/multiHopAddress.test.ts client/src/lib/ruleProbeCache.test.ts client/src/lib/tunnelDisplay.test.ts client/src/components/LatencyTimeRangeSelect.test.ts client/src/components/LinkTestLatencySummary.test.tsx client/src/components/plugins/agentResourceState.test.ts client/src/components/plugins/PluginResultRenderer.test.tsx",
"plugins:package": "node scripts/package-plugins.mjs",
"check:versions": "node scripts/check-versions.mjs",
"migrate:legacy": "node dist/migrate-legacy.js",
"start": "NODE_ENV=production node dist/index.js",
"db:generate": "drizzle-kit generate",
"db:migrate": "drizzle-kit migrate",
"db:push": "drizzle-kit push"
},
"dependencies": {
"@capacitor/android": "^8.3.4",
"@capacitor/app": "^8.1.0",
"@capacitor/browser": "^8.0.3",
"@capacitor/core": "^8.3.4",
"@capacitor/local-notifications": "^8.2.0",
"@capacitor/preferences": "^8.0.1",
"@deck.gl/layers": "^9.3.3",
"@deck.gl/react": "^9.3.3",
"@dnd-kit/core": "^6.3.1",
"@dnd-kit/sortable": "^10.0.0",
"@dnd-kit/utilities": "^3.2.2",
"@formkit/auto-animate": "^0.9.0",
"@radix-ui/react-avatar": "^1.1.11",
"@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-progress": "^1.1.8",
"@radix-ui/react-scroll-area": "^1.2.10",
"@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",
"@trpc/server": "^11.0.0",
"@types/pg": "^8.20.0",
"avataaars": "^2.0.0",
"better-sqlite3": "^11.7.0",
"cookie-parser": "^1.4.7",
"countup.js": "^2.10.0",
"dotenv": "^16.4.7",
"drizzle-orm": "^0.36.4",
"express": "^4.21.0",
"jsonwebtoken": "^9.0.2",
"maplibre-gl": "^5.24.0",
"motion": "^12.40.0",
"mysql2": "^3.14.1",
"nanoid": "^5.0.9",
"nodemailer": "^6.9.16",
"pg": "^8.21.0",
"qrcode": "^1.5.4",
"react-globe.gl": "^2.38.0",
"react-map-gl": "^8.1.1",
"recharts": "^2.13.0",
"superjson": "^2.2.2",
"svg-captcha": "^1.4.0",
"zod": "^3.24.0"
},
"devDependencies": {
"@capacitor/cli": "^8.3.4",
"@tailwindcss/vite": "^4.0.0",
"@tanstack/react-query": "^5.62.0",
"@trpc/client": "^11.0.0",
"@trpc/react-query": "^11.0.0",
"@types/better-sqlite3": "^7.6.12",
"@types/cookie-parser": "^1.4.8",
"@types/express": "^5.0.0",
"@types/jsonwebtoken": "^9.0.7",
"@types/node": "^22.0.0",
"@types/nodemailer": "^6.4.17",
"@types/qrcode": "^1.5.6",
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0",
"@vitejs/plugin-react": "^4.3.0",
"autoprefixer": "^10.4.20",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"drizzle-kit": "^0.30.0",
"esbuild": "^0.28.0",
"lucide-react": "^0.469.0",
"react": "^19.0.0",
"react-dom": "^19.0.0",
"sonner": "^1.7.0",
"tailwind-merge": "^2.6.0",
"tailwindcss": "^4.0.0",
"tsx": "^4.19.0",
"tw-animate-css": "^1.0.0",
"typescript": "^5.7.0",
"vite": "^6.0.0",
"vitepress": "^1.6.4",
"wouter": "^3.3.0"
}
}