secubox-openwrt/luci-app-secubox
CyberMind-FR f552cf7b99 Add LuCI development status view for SecuBox Hub
New Feature:
- Development status page in LuCI interface
- Real-time progress tracking for administrators
- Integrated with SecuBox Hub menu

File Added:
- luci-app-secubox/htdocs/luci-static/resources/view/secubox/dev-status.js
  * LuCI view module with native integration
  * Same milestone data as website widget
  * Adapted styling for LuCI theme
  * Translated labels using LuCI i18n system

Features:
 Overall progress indicator (87%)
 4 milestone categories with progress bars
 Project timeline (6 phases)
 Statistics grid (8 metrics)
 Status icons and colors
 Responsive grid layouts
 LuCI theme integration

Display Sections:
1. Overall Progress Badge
   - Large percentage display
   - Gradient background
   - Center aligned

2. Development Milestones
   - Core Modules (100%)
   - Hardware Support (95%)
   - Integration & Testing (85%)
   - Campaign Preparation (70%)
   - Detailed item lists with statuses

3. Project Timeline
   - 6 phases with visual markers
   - Progress bars per phase
   - Completed/in-progress/planned indicators
   - Timeline line connecting phases

4. Project Statistics
   - Modules, Languages, Architectures
   - Lines of Code, Contributors, Commits
   - Open/Closed Issues

Technical Implementation:
- LuCI view.extend() architecture
- Native E() element creation
- Inline CSS for self-contained styling
- No external dependencies
- Translated strings using _() function
- Compatible with LuCI responsive layout

Access Path:
Services → SecuBox → Development Status
URL: /admin/services/secubox/dev-status

Integration:
- Provides transparency for system administrators
- Shows SecuBox project maturity
- Useful for beta testers and contributors
- Complements website campaign page

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-28 03:34:19 +01:00
..
.github/workflows fix: hope modules refresh 2025-12-23 18:53:18 +01:00
htdocs/luci-static/resources Add LuCI development status view for SecuBox Hub 2025-12-28 03:34:19 +01:00
root refactor: Simplify enable/disable to only manage UCI config 2025-12-28 02:35:57 +01:00
Makefile feat: Add comprehensive permission management system (v0.3.1) 2025-12-28 02:19:30 +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