{"id":23404811,"url":"https://github.com/led-mirage/pingmonitor","last_synced_at":"2026-05-07T09:33:50.741Z","repository":{"id":269241721,"uuid":"906805835","full_name":"led-mirage/PingMonitor","owner":"led-mirage","description":"PingMonitor is a lightweight Windows application that monitors the availability of multiple hosts by periodically pinging them.","archived":false,"fork":false,"pushed_at":"2024-12-24T14:05:43.000Z","size":611,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-08T22:47:52.476Z","etag":null,"topics":["dotnet","network","ping","tool","windows-forms"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/led-mirage.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-22T00:34:01.000Z","updated_at":"2024-12-24T14:03:49.000Z","dependencies_parsed_at":"2024-12-22T04:22:23.318Z","dependency_job_id":"86c72caf-a13b-4dea-8a9c-b2fbcc59a584","html_url":"https://github.com/led-mirage/PingMonitor","commit_stats":null,"previous_names":["led-mirage/pingmonitor"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/led-mirage%2FPingMonitor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/led-mirage%2FPingMonitor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/led-mirage%2FPingMonitor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/led-mirage%2FPingMonitor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/led-mirage","download_url":"https://codeload.github.com/led-mirage/PingMonitor/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247941717,"owners_count":21022037,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dotnet","network","ping","tool","windows-forms"],"created_at":"2024-12-22T13:15:52.048Z","updated_at":"2025-10-28T07:33:37.203Z","avatar_url":"https://github.com/led-mirage.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# \u003cimg src=\"images/icon/PingMonitor.ico\" width=\"48\"\u003e PingMonitor\n\nPingMonitor is a lightweight Windows application that monitors the availability of multiple hosts by periodically pinging them. It is designed for simplicity and efficiency, making it ideal for both network administrators and casual users.\n\n## Features\n\n- **Host Monitoring**: Monitors multiple hosts in real-time by sending periodic ping requests.\n- **Response Time Display**: Shows the response time (in milliseconds) for each host, enabling users to monitor network performance and identify slow connections.\n- **Retry Mechanism**: Retries failed ping requests to ensure reliability.\n- **Customizable Settings**:\n  - Ping interval\n  - Retry count\n  - Ping timeout\n  - Font family\n  - Font size\n  - Address family preference\n- **Visual Feedback**: Displays the status of each host with a green (reachable) or red (unreachable) indicator.\n- **Group Switching**: Instantly switch between different host groups with no delays, allowing for seamless monitoring of multiple networks.\n- **Resizable UI**: Saves the window size and position between sessions.\n- **Multi-language Support**: Available in multiple languages, including English, Chinese (Simplified), French, German, and Portuguese (Brazil), making it accessible to a global audience.\n\n## Installation\n\n### Download Pre-built Executable\n\nPre-built executable for Windows is available on the Release page.\n\n1. Download the latest release from the [Releases](https://github.com/led-mirage/PingMonitor/releases) page.\n2. Extract the zip file to your desired location.\n3. Run `PingMonitor.exe`.\n\n💡 Note:  \n- If Windows Defender or other antivirus software flags the executable, please refer to the VirusTotal Scan Result for more information.\n- **Before updating to a new version, please backup your hosts.txt file to avoid overwriting any custom configurations.**\n- **The PingMonitor.dll.config (App.config) file may contain important updates in new versions. If you have customized this file, carefully merge your changes to include any new settings.**\n\n### v1.2.0 VirusTotal Scan Result\n\nTo ensure the safety of the application, I performed a scan using VirusTotal. Below is the scan result:\n\n- Detections: 1/68\n- Scan Details: [View the VirusTotal scan result](https://www.virustotal.com/gui/file/987d7834550ff424a9d883ea01e1fd8b8fa932db75be9559b79130b52dc4bb9e)\n\n💡 Additional Information:  \nThe detection by one engine out of 68 may be a false positive. If you have any concerns, feel free to inspect the scan details via the link above.\n\n## Configuration\n\n### `hosts.txt`\n\nAdd the hostnames or IP addresses you want to monitor to the `hosts.txt` file. You can organize hosts into groups by using square brackets to define group names. Each line within a group should contain one hostname or IP address.\n\nExample:\n\n```text\n[Public Servers]\ngoogle.com\n8.8.8.8\n1.1.1.1\n\n[Private Servers]\n192.168.10.1\n192.168.10.10\n192.168.10.11\n```\n\n### Application Settings\n\nThe application reads customizable settings from `PingMonitor.dll.config`. These settings include:\n- `IntervalMs`: Ping interval in milliseconds (default: 5000).\n- `RetryCount`: Number of retries for a failed ping (default: 3).\n- `PingTimeoutMs`: Ping timeout in milliseconds (default: 500).\n- `FontFamily`: Specifies the font family used for displaying host names and status labels in the application's user interface.\n- `FontSize`: Specifies the font size used for displaying host names and status labels in the application's user interface.\n- `AddressFamilyPreference`: Specifies the preferred IP address family for performing pings. Options are 'IPv4', 'IPv6', and 'Auto' (default: 'Auto'). If the specified family is not available, it will fall back to the other.\n  - **IPv4**: Prioritize IPv4 addresses.\n  - **IPv6**: Prioritize IPv6 addresses.\n  - **Auto**: Automatically select the address family based on the system's default behavior.\n\nExample snippet from `App.config`:\n\n```xml\n\u003cappSettings\u003e\n  \u003cadd key=\"IntervalMs\" value=\"5000\" /\u003e\n  \u003cadd key=\"RetryCount\" value=\"3\" /\u003e\n  \u003cadd key=\"PingTimeoutMs\" value=\"500\" /\u003e\n  \u003cadd key=\"FontFamily\" value=\"Segoe UI\" /\u003e\n  \u003cadd key=\"FontSize\" value=\"10\" /\u003e\n  \u003cadd key=\"AddressFamilyPreference\" value=\"IPv4\" /\u003e\n\u003c/appSettings\u003e\n```\n\n## Screenshots\n\n\u003cimg src=\"documents/screenshot.gif\" width=\"300\"\u003e\n\n## Requirements\n\n- Windows 10 or higher\n\n## Development\n\n### Prerequisites\n\n- .NET 8.0 SDK or higher\n- Visual Studio Code or Visual Studio 2022\n\n### Building from Source\n\n1. Clone the repository:\n    ```bash\n    git clone https://github.com/your-repo/PingMonitor.git\n    ```\n2. Open the project in Visual Studio or VS Code.\n3. Build the project in Release mode.\n4. The executable will be in the bin/Release/net8.0-windows folder.\n\n## License\n\nThis project is licensed under the MIT License. See the LICENSE file for details.\n\n## Acknowledgments\n\nIcons used in this project were sourced from Flaticon.com:\n\n- \u003ca href=\"https://www.flaticon.com/free-icons/tick\" title=\"tick icons\"\u003eTick icons created by Roundicons - Flaticon\u003c/a\u003e\n- \u003ca href=\"https://www.flaticon.com/free-icons/cross\" title=\"cross icons\"\u003eCross icons created by Roundicons - Flaticon\u003c/a\u003e\n- \u003ca href=\"https://www.flaticon.com/free-icons/previous\" title=\"previous icons\"\u003ePrevious icons created by Those Icons - Flaticon\u003c/a\u003e\n- \u003ca href=\"https://www.flaticon.com/free-icons/right\" title=\"right icons\"\u003eRight icons created by Those Icons - Flaticon\u003c/a\u003e\n\n## Release History\n\n### **v1.2.0**: 2024/12/24\n\n- Feature: Added response time display for hosts!\n  - **Response Time Display**: The response time (in milliseconds) for each host is now shown alongside its status (e.g., 12ms). This makes monitoring host performance more informative and efficient.\n  - **Enhanced Usability**: Quickly identify servers with slow response times and diagnose potential network issues with ease. Perfect for proactive monitoring and troubleshooting!\n\n### **v1.1.0**: 2024/12/23\n\n- Feature: Added AddressFamilyPreference setting\n  - Users can now specify 'IPv4', 'IPv6', or 'Auto' preferences for ping operations.\n  - If the specified family is not available, it will fall back to the other.\n\n### **v1.0.1**: 2024/12/22\n\n- Fix: Ensure window position and size are within screen bounds on restore\n  - Added checks to ensure window does not go out of screen bounds after being displayed on a different monitor.\n  - Refactored code to move position and size restoration logic into a separate method.\n\n### **v1.0.0**: 2024/12/22\n\n- Initial release\n\n## Copyright\n\n© 2024 led-mirage. All rights reserved.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fled-mirage%2Fpingmonitor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fled-mirage%2Fpingmonitor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fled-mirage%2Fpingmonitor/lists"}