Inspiration
Calculating IPv4 subnets and checking basic host or port reachability often requires juggling multiple tools or CLI commands. I wanted to build a single, lightweight desktop utility that combines subnet calculations with real-time network diagnostics in a clean, straightforward interface.
What it does
NetPulse & Subnet Helper features two main modules:
- Subnet Calculator: Computes CIDR notation, subnet masks, wildcard masks, network and broadcast addresses, host ranges, and total/usable host counts from any IPv4 address.
- Network Status Checker: Performs non-blocking ICMP ping requests and TCP port availability checks to verify whether a target host or service is reachable.
How we built it
- Language & GUI: Built with Python using standard library modules (
tkinter,ipaddress,socket,subprocess,threading). - Concurrency: Implemented multi-threading to ensure the graphical user interface stays responsive during network ping and port checks.
- OS Compatibility: Developed and tested on Linux Mint with cross-platform support in mind.
Challenges we ran into
Handling network timeouts smoothly without freezing the GUI was a key challenge. Solving this required carefully offloading socket connection checks and process calls to background threads.
What we learned
We gained hands-on experience in threading with Tkinter, parsing IP networks using Python's standard libraries, and handling edge cases for network reachability and invalid user input.
What's next for NetPulse & Subnet Helper
- Support for IPv6 subnetting.
- Multi-port range scanning capabilities.
- Option to export subnet calculation results to CSV or JSON formats.
Log in or sign up for Devpost to join the conversation.