A production-ready, cross-platform CLI/TUI tool built with Python that provides comprehensive network diagnostics and WiFi quality measurement. Perfect for network administrators, developers, and IT professionals who need reliable network assessment tools.
🔧 Tech Stack:
• Python 3.10+ with modern async/await patterns
• Typer for beautiful CLI interfaces
• Textual for rich TUI dashboards
• Pydantic for data validation and models
• Rich for stunning terminal output
• Plotly + Jinja2 for interactive HTML reports
⚡ Key Features:
• 📡 Real-time WiFi monitoring (RSSI, signal quality, bitrate)
• 🔍 Active network testing (ping, jitter, packet loss analysis)
• ⚡ Throughput measurement (iperf3 + HTTP fallback)
• 📊 Interactive TUI dashboard with live charts
• 📄 Multiple output formats (terminal, JSON, HTML reports)
• 🖥️ Cross-platform support (Linux, macOS, Windows)
• 🎯 System detection and graceful fallbacks
• 🔄 Concurrent operations with asyncio
🎮 Quick Start:
pip install wifi-profiler
wifi-profiler quick
wifi-profiler survey --html report.html
wifi-profiler live --duration 60
📊 Example Output:
Interface: wlp3s0
SSID: MyNetwork
RSSI: -52 dBm
Ping to 8.8.8.8:
Packets: 10/10 received
Packet loss: 0.0%
RTT: min=13.5ms, avg=14.9ms, max=17.4ms
Jitter: 1.4ms
Quality: excellent
Download Test:
Speed: 62.09 Mbps
Duration: 10.2s
Method: iperf3
🏗️ Architecture Highlights:
• Modular design with clear separation of concerns
• Comprehensive error handling and fallback mechanisms
• Type-safe data models with Pydantic
• Async-first approach for better performance
• Professional packaging with pyproject.toml
• Complete test suite with pytest
🎯 Use Cases:
• Network infrastructure assessment
• Performance baseline establishment
• Troubleshooting connectivity issues
• SLA compliance verification
• Development environment validation
• CI/CD pipeline integration
🔗 Links:
• GitHub: https://github.com/Sherin-SEF-AI/wifi-profiler
• PyPI: https://pypi.org/project/wifi-profiler/
• Documentation: https://github.com/Sherin-SEF-AI/wifi-profiler#readme
💡 What I Learned:
Building this project taught me the power of modern Python tooling. The combination of Typer, Textual, and Pydantic creates a robust foundation for CLI/TUI applications. Async programming with asyncio enables concurrent operations that significantly improve user experience.
🤝 Contributions Welcome:
The project is MIT licensed and open for contributions! Whether you're a network engineer, Python developer, or just interested in networking tools, your feedback and contributions are welcome.
📈 Next Steps:
• Prometheus metrics integration
• REST API for remote monitoring
• Mobile companion app
• Cloud storage integration
• Plugin system for custom tests
This project demonstrates how modern Python can create professional-grade network diagnostics tools that rival commercial solutions. The codebase is clean, well-documented, and production-ready.
Top comments (0)