NetGuard is a comprehensive, cross-platform desktop application designed for advanced network monitoring and device management. Built with a modern tech stack, it combines the power of Electron and React for a native-like user experience with a robust Node.js backend for meaningful data auditing and alerts.
- Real-time Network Monitoring: Live tracking of network traffic, latency, and uptime.
- Device Management: Inventory and status tracking of all connected devices.
- Smart Alerts & Notifications: Integrated system for critical alerts via Email (Nodemailer) and In-App notifications.
- Secure Authentication: Enterprise-grade authentication powered by Clerk.
- AI Insights: Leveraging Google Generative AI for anomaly detection and network analysis.
- Performance Metrics: Built-in integration with Prometheus and Grafana for deep system observability.
- Cross-Platform: Runs seamlessly on Windows, macOS, and Linux (via Electron).
- Internationalization: Multi-language support with i18next.
- Framework: React + Vite
- Language: TypeScript
- Runtime: Electron
- Styling: Tailwind CSS
- State Management: TanStack Query
- Animations: Framer Motion
- Charts: Recharts
- Runtime: Node.js
- Framework: Express.js
- Database: MongoDB + Mongoose
- Validation: Zod
- Documentation: Swagger / OpenAPI
- Testing: Jest
- Background Jobs: Node-cron
- Node.js (v18+)
- MongoDB Instance
- Clerk API Keys
- Google Gemini API Key
git clone https://github.com/manjaycoder/NetGuard.git
cd NetGuardcd Backend
npm install
cp .env.example .env
# Configure your .env references (MONGODB_URI, CLERK_KEYS, etc.)
npm run devcd Frontend
npm install
npm run electron:devThe system follows a Client-Server architecture:
- Electron Client: Handles UI presentation, local system interactions, and visualized data.
- Node.js API: Manages business logic, database interactions, and integrations with external services (AI, Email, Payments).
Scenario: TechFlow Solutions, a distributed team of 50 engineers, faced recurring productivity losses due to unstable VPN connections and bandwidth bottlenecks during critical release cycles.
Challenge:
- Identifying rogue devices consuming excessive bandwidth.
- Detecting latency spikes before they caused disconnection.
- No central dashboard to view the health of remote nodes.
Solution with NetGuard: Deployed NetGuard across all team endpoints to leverage:
- AI Traffic Analysis: Automatically flagged a misconfigured backup server saturating the uplink.
- Real-Time Alerts: Notified admins via Email/Slack when latency exceeded 150ms.
- Device Inventory: Auto-discovered unauthorized IoT devices on the secure subnet.
Results:
- 40% Reduction in network-related support tickets.
- 99.9% Uptime achieved during peak load.
- Immediate ROI by preventing a potential security breach from an unrecognized device.
For detailed technical documentation including architecture diagrams and module breakdown, please refer to PROJECT_DOCUMENTATION.md.
Contributions are welcome! Please read our Contributing Guide for details.
This project is licensed under the MIT License.