secubox-openwrt/luci-app-netifyd-dashboard/README.md
CyberMind-FR 403283419c docs: Reorganize documentation structure and add architecture diagrams
Major documentation improvements and restructuring for better maintainability
and navigation.

## Structural Changes

### New Documentation Organization
- Move all documentation to DOCS/ directory for better organization
- Create DOCS/archive/ for historical documents
- Move deployment scripts to secubox-tools/ directory

### Archived Documents
- COMPLETION_REPORT.md → archive/ (project milestone)
- MODULE-ENABLE-DISABLE-DESIGN.md → archive/ (feature implemented)
- BUILD_ISSUES.md → archive/ (issues resolved)
- Add archive/README.md with archiving policy and document index

## Documentation Enhancements

### Version Standardization
- Add version headers to CLAUDE.md (v1.0.0)
- Add version headers to BUILD_ISSUES.md (v1.0.0)
- Standardize date format to YYYY-MM-DD across all docs

### Cross-References & Navigation
- Add "See Also" sections to PERMISSIONS-GUIDE.md
- Add "See Also" sections to VALIDATION-GUIDE.md
- Link quick references to detailed guides
- Improve documentation discoverability

### Architecture Diagrams (Mermaid)
Add 3 professional diagrams to DEVELOPMENT-GUIDELINES.md:

1. **System Architecture Diagram** (§2)
   - Complete data flow: Browser → LuCI → RPCD → ubus → System
   - Color-coded components by layer
   - Shows JavaScript, RPC, RPCD daemon, UCI, system services

2. **Deployment Workflow Diagram** (§9)
   - Step-by-step deployment process with validation checkpoints
   - Error recovery paths for common issues (403, 404, -32000)
   - Local validation, file transfer, permission fixes, service restarts

3. **Component Hierarchy Diagram** (§1)
   - Standard page structure and CSS class relationships
   - Page → Header → Stats → Content → Cards → Buttons
   - Shows design system component organization

## New Files

### TODO-ANALYSE.md
- Comprehensive documentation improvement roadmap
- Tasks categorized: Immediate, Short-term, Long-term, Optional
- Progress tracking with acceptance criteria
- Covers testing, security, performance guides
- Documentation automation plans

## Benefits

 Cleaner project structure (docs in DOCS/, tools in secubox-tools/)
 Better documentation navigation with cross-references
 Visual understanding through architecture diagrams
 Historical documents archived but accessible
 Standardized versioning across all documentation
 Clear roadmap for future documentation improvements

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-28 09:52:15 +01:00

7.1 KiB

LuCI Netifyd Dashboard

Version: 1.0.0
Last Updated: 2025-12-28
Status: Active

Version License OpenWrt

Network Intelligence dashboard with Deep Packet Inspection for OpenWrt. Visualize applications, protocols, and devices on your network in real-time.

Dashboard Preview

Features

🔍 Deep Packet Inspection

  • Real-time application detection (Netflix, YouTube, Zoom, etc.)
  • Protocol identification (HTTP, HTTPS, DNS, QUIC, etc.)
  • Traffic categorization (Web, Streaming, Gaming, VoIP)

🔄 Network Flows

  • Live connection tracking
  • Source/destination visualization
  • Per-flow bandwidth statistics
  • Protocol breakdown (TCP/UDP/ICMP)

📱 Application Intelligence

  • Traffic by application
  • Category distribution
  • Historical usage data
  • Top bandwidth consumers

💻 Device Discovery

  • Automatic device detection
  • Vendor identification (MAC OUI lookup)
  • Hostname resolution via DHCP
  • Network interface mapping

🎨 Modern Interface

  • Purple/blue cyberpunk theme
  • Animated charts and donut graphs
  • Responsive grid layout
  • Real-time data updates

Screenshots

Overview Dashboard

Overview

Network Flows

Flows

Applications

Applications

Devices

Devices

Installation

Prerequisites

  • OpenWrt 21.02 or later
  • Netifyd package installed
  • LuCI web interface
# Install netifyd
opkg update
opkg install netifyd

# Enable and start
/etc/init.d/netifyd enable
/etc/init.d/netifyd start

From Source

# Clone into OpenWrt build environment
cd ~/openwrt/feeds/luci/applications/
git clone https://github.com/gkerma/luci-app-netifyd-dashboard.git

# Update feeds and install
cd ~/openwrt
./scripts/feeds update -a
./scripts/feeds install -a

# Enable in menuconfig
make menuconfig
# Navigate to: LuCI > Applications > luci-app-netifyd-dashboard

# Build package
make package/luci-app-netifyd-dashboard/compile V=s

Manual Installation

# Transfer package to router
scp luci-app-netifyd-dashboard_1.0.0-1_all.ipk root@192.168.1.1:/tmp/

# Install on router
ssh root@192.168.1.1
opkg install /tmp/luci-app-netifyd-dashboard_1.0.0-1_all.ipk

# Restart services
/etc/init.d/rpcd restart

Usage

After installation, access the dashboard at:

Status → Netifyd Dashboard

The dashboard has four tabs:

  1. Overview: Quick stats, protocol distribution, top applications
  2. Flows: Real-time connection table with DPI info
  3. Applications: Detected applications with traffic breakdown
  4. Devices: Network device discovery and identification

Architecture

┌─────────────────────────────────────────────────────────┐
│                    LuCI JavaScript                       │
│         (overview.js, flows.js, applications.js)        │
└───────────────────────────┬─────────────────────────────┘
                            │ ubus RPC
                            ▼
┌─────────────────────────────────────────────────────────┐
│                    RPCD Backend                          │
│            /usr/libexec/rpcd/netifyd-dashboard          │
└───────────────────────────┬─────────────────────────────┘
                            │ reads
                            ▼
┌─────────────────────────────────────────────────────────┐
│                     Netifyd Agent                        │
│           Deep Packet Inspection Engine                  │
│         /var/run/netifyd/status.json                    │
└───────────────────────────┬─────────────────────────────┘
                            │ inspects
                            ▼
┌─────────────────────────────────────────────────────────┐
│                   Network Traffic                        │
│              (br-lan, eth0, wlan0, etc.)                │
└─────────────────────────────────────────────────────────┘

API Endpoints

Method Description
status Netifyd daemon status, version, uptime
stats Quick overview stats (flows, devices, bandwidth)
flows Active network connections with DPI data
applications Detected applications and traffic
protocols Protocol distribution (TCP/UDP/ICMP)
devices Discovered network devices

What is Netifyd?

Netifyd is a deep packet inspection daemon that identifies applications and protocols on your network. It's the open-source engine behind Netify network intelligence.

Key capabilities:

  • Layer 7 application identification
  • 300+ protocol signatures
  • 1000+ application signatures
  • Machine learning classification
  • Low CPU/memory footprint

Requirements

  • OpenWrt 21.02+
  • netifyd (DPI engine)
  • LuCI (luci-base)
  • rpcd with luci module

Dependencies

  • luci-base
  • luci-lib-jsonc
  • rpcd
  • rpcd-mod-luci
  • netifyd

Configuration

Netifyd configuration is in /etc/netifyd.conf. Key options:

# Interfaces to monitor
[capture]
interface = br-lan
interface = eth0.2

# Enable flow tracking
[flow]
enable = yes

Contributing

Contributions are welcome! Please feel free to submit issues and pull requests.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Credits


Made with 💜 for the OpenWrt community