项目文件夹

文件
TC-fighting ecfc19b7a0
Release / Prepare Scheduled Release (push) Has been skipped
Release / Publish Release (push) Failing after 0s
feat(secplane): add Security Protection Platform frontend console (#156)
Adds the complete Security Protection Platform (secplane) frontend — a
unified admin console covering 4 defense layers:

- Runtime layer: input/state/decision/output surface defense,
  asset tamper-proofing, human approval workflow (6 scenario pages)
- Host layer: host hardening (KSec + Falco/IDS) and container isolation
- Audit layer: SecureClaw data-and-component trust auditing
- Control layer: outbound trusted-endpoint governance, policy governance,
  kill-switch/circuit-breaker, full-chain audit, collaboration governance,
  and input detection (5 scenario pages + 2 collaboration pages)

Includes:
- 9 i18n translation files (en/zh/ja/ko/de) for all secplane modules
- Security overview page and event center
- Category navigation and scenario placeholder system
- Dispatch picker and apply dispatch buttons
- Host hardening service with Falco/IDS template data
- /api/host dev proxy in vite.config for ksec-bridge
- Navigation menu integration in AdminLayout
- Security center breadcrumb navigation
- Instance portal proxy URL fix (use Vite dev proxy)
- package.json: add js-yaml dependency for IDS template parsing
- 5-language README What's New entries for secplane

Excluded (per design):
- authStore.ts dev bypass (VITE_BYPASS_AUTH)
- Backend address override (minikube IP restored to 127.0.0.1:9001)
- Backend secplane Go code (separate PR)
- docs/ and tests/ (separate PRs)

Co-authored-by: Claude <noreply@anthropic.com>
2026-07-13 10:17:34 +08:00

44 行
1.1 KiB
JSON

{
"name": "frontend",
"private": true,
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "vite --port 9002",
"build": "tsc -b && vite build",
"lint": "eslint .",
"preview": "vite preview"
},
"dependencies": {
"@tanstack/react-query": "^5.90.21",
"@xterm/addon-fit": "^0.11.0",
"@xterm/addon-unicode11": "^0.9.0",
"@xterm/xterm": "^6.0.0",
"axios": "^1.13.6",
"js-yaml": "^4.2.0",
"lucide-react": "^1.17.0",
"react": "^19.2.4",
"react-dom": "^19.2.4",
"react-router-dom": "^7.13.1",
"zustand": "^5.0.11"
},
"devDependencies": {
"@eslint/js": "^9.39.4",
"@types/js-yaml": "^4.0.9",
"@types/node": "^24.12.0",
"@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3",
"@vitejs/plugin-react": "^6.0.0",
"autoprefixer": "^10.4.27",
"eslint": "^9.39.4",
"eslint-plugin-react-hooks": "^7.0.1",
"eslint-plugin-react-refresh": "^0.5.2",
"globals": "^17.4.0",
"postcss": "^8.5.8",
"tailwindcss": "^3.4.19",
"typescript": "~5.9.3",
"typescript-eslint": "^8.56.1",
"vite": "^8.0.0"
}
}