secubox-openwrt/luci-app-secubox
CyberMind-FR 8e53825ad5 release: v0.2.2 - Design System v0.3.0 & Comprehensive Documentation
🎨 Design System v0.3.0 (Demo-inspired)
- New dark palette: #0a0a0f, #6366f1→#8b5cf6 gradients
- Typography: Inter + JetBrains Mono
- Compact stats grid (130px min)
- Gradient text effects with background-clip
- Sticky navigation tabs
- Enhanced card borders and hover effects

📚 Comprehensive Documentation Suite
- DEVELOPMENT-GUIDELINES.md (33KB, 900+ lines)
  - 9 major sections: Design, Architecture, RPCD, ACL, JS, CSS, Errors, Validation, Deployment
  - Complete code templates and best practices
  - Common error diagnostics and solutions
- QUICK-START.md (6.4KB)
  - 8 critical rules for immediate reference
  - Quick code templates
  - Error quick fixes table
- deploy-module-template.sh (8.1KB)
  - Standardized deployment with automatic backup
  - Permission fixes, cache clearing, verification
- Updated CLAUDE.md, README.md with documentation index
- Updated .claude/README.md to v2.0

🔄 Version Updates
- luci-app-secubox: 0.1.2 → 0.2.2
- luci-app-system-hub: 0.1.1 → 0.2.2
- Updated all version strings (api.js, overview.js, CSS files)

🎯 CSS Enhancements
- common.css: Complete rewrite with demo palette
- overview.css: Dashboard header with gradient
- services.css: Updated version to 0.2.2
- components.css: Updated version to 0.2.2

🔧 Critical Rules Documented
1. RPCD naming: file = ubus object (luci. prefix)
2. Menu path = view file location
3. Permissions: 755 (RPCD), 644 (CSS/JS)
4. ALWAYS run validate-modules.sh
5. CSS variables only (no hardcode)
6. Dark mode mandatory
7. Typography: Inter + JetBrains Mono
8. Gradients: --sh-primary → --sh-primary-end

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-26 18:55:19 +01:00
..
.github/workflows fix: hope modules refresh 2025-12-23 18:53:18 +01:00
htdocs/luci-static/resources release: v0.2.2 - Design System v0.3.0 & Comprehensive Documentation 2025-12-26 18:55:19 +01:00
root release: v0.1.2-alpha - Dynamic Module Detection & Responsive Cards 2025-12-26 17:06:00 +01:00
Makefile release: v0.2.2 - Design System v0.3.0 & Comprehensive Documentation 2025-12-26 18:55:19 +01:00
README.md docs: add LuCI menu structure section to secubox README 2025-12-24 00:20:17 +01:00

SecuBox Central Hub

Central management dashboard for the SecuBox security and network management suite for OpenWrt.

Features

Dashboard Overview

  • Real-time system health monitoring (CPU, Memory, Disk, Network)
  • Visual gauges with color-coded status indicators
  • Module status grid with quick access links
  • Aggregated alerts from all modules
  • Quick action buttons for common tasks

System Health Monitoring

  • CPU: Load average and percentage with multi-core support
  • Memory: RAM usage with total/used/available metrics
  • Disk: Root filesystem usage and available space
  • Network: Real-time RX/TX bandwidth statistics

Quick Actions

  • Restart RPCD service
  • Restart uHTTPd web server
  • Clear system cache
  • Create configuration backup
  • Restart network services
  • Restart firewall

Module Management

Auto-detection and status monitoring for all SecuBox modules:

Security & Monitoring

  • CrowdSec - Collaborative threat intelligence
  • Netdata - Real-time system monitoring
  • Netifyd - Deep packet inspection
  • Client Guardian - Network access control and captive portal
  • Auth Guardian - Advanced authentication system

Network Management

  • WireGuard - Modern VPN with QR codes
  • Network Modes - Network topology configuration
  • Bandwidth Manager - QoS and bandwidth quotas
  • Media Flow - Media traffic detection and optimization
  • Traffic Shaper - Advanced traffic shaping

System & Performance

  • System Hub - Unified control center
  • CDN Cache - Local caching proxy
  • Virtual Host Manager - Virtual host configuration

LuCI Menu Structure

The SecuBox hub organizes all modules into a hierarchical menu structure in LuCI:

SecuBox
├── Dashboard                  (Main overview and system health)
├── Modules                    (Module management view)
├── Security & Monitoring
│   ├── CrowdSec              (Collaborative threat intelligence)
│   ├── Netdata               (Real-time system monitoring)
│   ├── Netifyd               (Deep packet inspection)
│   ├── Client Guardian       (Network access control & captive portal)
│   └── Auth Guardian         (Advanced authentication system)
├── Network Management
│   ├── WireGuard             (Modern VPN with QR codes)
│   ├── Network Modes         (Network topology configuration)
│   ├── Bandwidth Manager     (QoS and bandwidth quotas)
│   ├── Media Flow            (Media traffic detection & optimization)
│   └── Traffic Shaper        (Advanced traffic shaping)
└── System & Performance
    ├── System Hub            (Unified control center)
    ├── CDN Cache             (Local caching proxy)
    └── Virtual Host Manager  (Virtual host configuration)

Menu Registration

The hub defines three category parent menus that other SecuBox modules register under:

  • admin/secubox/security - Security & Monitoring modules
  • admin/secubox/network - Network Management modules
  • admin/secubox/system - System & Performance modules

Each module automatically appears in the appropriate category when installed.

Troubleshooting Menu Issues

If modules don't appear in the menu after installation:

  1. Restart services:

    /etc/init.d/rpcd restart
    /etc/init.d/uhttpd restart
    
  2. Clear browser cache: Press Ctrl+Shift+R to force reload

  3. Verify menu files exist:

    ls -la /usr/share/luci/menu.d/luci-app-*.json
    
  4. Check ACL permissions:

    ls -la /usr/share/rpcd/acl.d/luci-app-*.json
    

RPCD API Methods

The hub provides a comprehensive RPC API via ubus:

  • status - Get hub status and basic system info
  • modules - List all SecuBox modules with status
  • modules_by_category - Filter modules by category
  • module_info - Get detailed info for a specific module
  • get_system_health - Detailed system health metrics
  • get_alerts - Aggregated alerts from all modules
  • get_dashboard_data - All dashboard data in one call
  • quick_action - Execute quick actions
  • start_module / stop_module / restart_module - Module control
  • health - System health checks
  • diagnostics - Generate diagnostics bundle

Installation

opkg update
opkg install luci-app-secubox
/etc/init.d/rpcd restart
/etc/init.d/uhttpd restart

Building

# Clone into OpenWrt SDK
git clone https://github.com/youruser/luci-app-secubox.git package/luci-app-secubox
make package/luci-app-secubox/compile V=s

Configuration

Edit /etc/config/secubox to customize module definitions and settings.

File Structure

luci-app-secubox/
├── Makefile
├── README.md
├── htdocs/luci-static/resources/
│   ├── view/secubox/
│   │   ├── dashboard.js      # Main dashboard view
│   │   ├── modules.js         # Modules management view
│   │   └── settings.js        # Settings view
│   └── secubox/
│       ├── api.js             # RPC API client
│       └── secubox.css        # Dashboard styles
└── root/
    ├── etc/config/secubox     # UCI configuration
    └── usr/
        ├── libexec/rpcd/secubox              # RPCD backend
        └── share/
            ├── luci/menu.d/luci-app-secubox.json
            └── rpcd/acl.d/luci-app-secubox.json

License

Apache-2.0 - Copyright (C) 2025 CyberMind.fr