INHAD (NetGuard AI) is a next-generation network observability platform that combines real-time Linux kernel telemetry with Generative AI to detect anomalies, predict network degradation, and visualize complex connectivity data.
Designed for SREs and Network Engineers, it bridges the gap between raw packet metrics and actionable intelligence.
- Kernel-Level Inspection: Bypasses browser sandboxes using a custom Node.js collector that interfaces directly with
/proc/net/dev,/proc/net/sockstat, and system routes. - Microsecond Precision: Tracks Latency, Jitter (Standard Deviation), and Packet Loss via active ICMP probing.
- Protocol Analysis: Monitors active TCP/UDP socket states and
TIME_WAITconnections to detect port exhaustion.
- Gemini 2.5 Integration: Feeds rolling windows of telemetry data into Google's Gemini 2.5 Flash model.
- Predictive Analytics: Forecasts potential outages based on latency trends and packet loss patterns.
- Root Cause Analysis: Automatically correlates bandwidth drops with latency spikes to suggest remediation (e.g., "ISP Congestion" vs "Local Hardware Saturation").
- Cyberpunk / OLED Aesthetic: "True Black" design system optimized for low-light control rooms.
- Reactive Visualizations: Smooth, 60fps animations using Recharts and Framer Motion concepts.
- Connectivity Visualizer: Real-time animated SVG data flow diagram representing the physical network path.
- Frontend: React 19, TypeScript, Vite
- Styling: Tailwind CSS, Lucide Icons, Custom Animations
- Visualization: Recharts, SVG
- Backend / Collector: Node.js (Zero-dependency architecture)
- AI/LLM: Google GenAI SDK (Gemini 2.5 Flash)
- Node.js v18+
- Linux/MacOS (for the Collector script) OR a modern browser (for Simulation mode)
- A Google AI Studio API Key
# Clone the repository
git clone https://github.com/yourusername/inhad.git
cd inhad
# Install dependencies
npm installCreate a .env file in the root directory:
# Get your key from https://aistudio.google.com/
API_KEY=your_gemini_api_key_hereTo see real data from your local machine, run the collector agent. This script needs permission to run ping and read /proc files.
# Runs on port 3001
node collector.jsNote: If collector.js is not running, the dashboard automatically falls back to a high-fidelity chaos simulator.
npm startOpen http://localhost:8080 in your browser.
graph TD
A[Linux Kernel] -->|/proc/net/*| B(Node.js Collector)
A -->|ICMP Ping| B
B -->|JSON/HTTP| C[React Dashboard]
D[Browser API] -.->|Fallback| C
C -->|Telemetry Context| E[Gemini 2.5 Flash]
E -->|RCA & Predictions| C
- "Live Signal" is not appearing: Ensure
collector.jsis running and accessible athttp://localhost:3001/metrics. Check your browser console for CORS errors. - AI Analysis fails: Verify your
API_KEYis valid and has quota available.