secubox-openwrt/package/secubox/luci-app-crowdsec-dashboard/root/usr/share/luci/menu.d/luci-app-crowdsec-dashboard.json
CyberMind-FR 31a87c5d7a feat(structure): reorganize luci-app packages into package/secubox/ + appstore migration
Major structural reorganization and feature additions:

## Folder Reorganization
- Move 17 luci-app-* packages to package/secubox/ (except luci-app-secubox core hub)
- Update all tooling to support new structure:
  - secubox-tools/quick-deploy.sh: search both locations
  - secubox-tools/validate-modules.sh: validate both directories
  - secubox-tools/fix-permissions.sh: fix permissions in both locations
  - .github/workflows/test-validate.yml: build from both paths
- Update README.md links to new package/secubox/ paths

## AppStore Migration (Complete)
- Add catalog entries for all remaining luci-app packages:
  - network-tweaks.json: Network optimization tools
  - secubox-bonus.json: Documentation & demos hub
- Total: 24 apps in AppStore catalog (22 existing + 2 new)
- New category: 'documentation' for docs/demos/tutorials

## VHost Manager v2.0 Enhancements
- Add profile activation system for Internal Services and Redirects
- Implement createVHost() API wrapper for template-based deployment
- Fix Virtual Hosts view rendering with proper LuCI patterns
- Fix RPCD backend shell script errors (remove invalid local declarations)
- Extend backend validation for nginx return directives (redirect support)
- Add section_id parameter for named VHost profiles
- Add Remove button to Redirects page for feature parity
- Update README to v2.0 with comprehensive feature documentation

## Network Tweaks Dashboard
- Close button added to component details modal

Files changed: 340+ (336 renames with preserved git history)
Packages affected: 19 luci-app, 2 secubox-app, 1 theme, 4 tools

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-01 14:59:38 +01:00

68 lines
1.3 KiB
JSON

{
"admin/secubox/security/crowdsec": {
"title": "CrowdSec",
"order": 10,
"action": {
"type": "firstchild"
},
"depends": {
"acl": ["luci-app-crowdsec"]
}
},
"admin/secubox/security/crowdsec/overview": {
"title": "Overview",
"order": 10,
"action": {
"type": "view",
"path": "crowdsec-dashboard/overview"
}
},
"admin/secubox/security/crowdsec/decisions": {
"title": "Decisions",
"order": 20,
"action": {
"type": "view",
"path": "crowdsec-dashboard/decisions"
}
},
"admin/secubox/security/crowdsec/alerts": {
"title": "Alerts",
"order": 30,
"action": {
"type": "view",
"path": "crowdsec-dashboard/alerts"
}
},
"admin/secubox/security/crowdsec/bouncers": {
"title": "Bouncers",
"order": 40,
"action": {
"type": "view",
"path": "crowdsec-dashboard/bouncers"
}
},
"admin/secubox/security/crowdsec/waf": {
"title": "WAF/AppSec",
"order": 45,
"action": {
"type": "view",
"path": "crowdsec-dashboard/waf"
}
},
"admin/secubox/security/crowdsec/metrics": {
"title": "Metrics",
"order": 50,
"action": {
"type": "view",
"path": "crowdsec-dashboard/metrics"
}
},
"admin/secubox/security/crowdsec/settings": {
"title": "Settings",
"order": 90,
"action": {
"type": "view",
"path": "crowdsec-dashboard/settings"
}
}
}