Internet Monitor

C 61 completed
Devops
containerized / python · tiny
22
Files
2,330
LOC
0
Frameworks
4
Languages

Pipeline State

completed
Run ID
#305609
Phase
done
Progress
1%
Started
Finished
2026-04-13 01:31:02
LLM tokens
0

Pipeline Metadata

Stage
Cataloged
Decision
proceed
Novelty
55.62
Framework unique
Isolation
Last stage change
2026-05-10 03:34:51
Deduplication group #53384
Member of a group with 5 similar repo(s) — canonical #17343 view group →
Top concepts (1)
Automation
All rows above produced by Repobility · https://repobility.com

AI Prompt

Create a two-component system in Python to monitor home internet connectivity and send outage notifications. The system should have a 'NAS Monitor' component that pings DNS servers like 1.1.1.1 and 8.8.8.8 every 30 seconds, logging results to daily CSV files. It must also send heartbeats over Tailscale every 60 seconds. A second 'VPS Monitor' component, which uses Flask, should receive these heartbeats. If no heartbeat is received for three minutes, it needs to send a "DOWN" notification via ntfy. When heartbeats resume, it should send a "RESTORED" notification, including the outage duration.
python containerized networking monitoring outage-detection flask csv tailscale notifications iot
Generated by gemma4:latest

Catalog Information

The jowtron__internet-monitor project is a two-component system designed to monitor home internet connectivity and send notifications about outages.

Description

This project consists of two main components: NAS Monitor and VPS Monitor. The NAS Monitor pings DNS servers every 30 seconds, logs the results to daily CSV files, and sends heartbeats to the VPS over Tailscale. If no heartbeats are received for 3 minutes, the VPS Monitor sends a 'DOWN' notification via ntfy. When heartbeats resume, it sends a 'RESTORED' notification with outage duration.

الوصف

هذا المشروع يتألف من مكونين رئيسيين: مراقب NAS ومراقب VPS. يرسل مراقب NAS ping إلى خوادم DNS كل 30 ثانية، ويحتفظ بالنتائج في ملفات CSV اليومية، ويرسل نبضات القلب إلى VPS عبر Tailscale. إذا لم يتم استقبال أي نبضات قلب خلال 3 دقائق، فإن مراقب VPS يرسل إشعار 'DOWN' عبر ntfy.

Novelty

7/10

Tags

internet-monitoring outage-notification home-network cloud-vps

Claude Models

claude-sonnet-4.6

Quality Score

C
60.9/100
Structure
55
Code Quality
65
Documentation
70
Testing
15
Practices
78
Security
92
Dependencies
65

Strengths

  • CI/CD pipeline configured (github_actions)
  • Consistent naming conventions (snake_case)
  • Good security practices \u2014 no major issues detected
  • Containerized deployment (Docker)
  • Properly licensed project

Weaknesses

  • No tests found \u2014 high risk of regressions
  • 103 duplicate lines detected \u2014 consider DRY refactoring
  • 2 'god files' with >500 LOC need decomposition

Recommendations

  • Add a test suite \u2014 start with critical path integration tests
  • Add a linter configuration to enforce code style consistency

Security & Health

4.1h
Tech Debt (D)
Medium
DORA Rating
A
OWASP (100%)
About: code-quality intelligence by Repobility · https://repobility.com
PASS
Quality Gate
A
Risk (4)
MIT
License
3.2%
Duplication
Full Security Report AI Fix Prompts SARIF SBOM

Languages

python
81.4%
markdown
12.5%
yaml
5.8%
text
0.2%

Frameworks

None detected

Symbols

method63
variable46
class17
function4
constant2

API Endpoints (12)

Findings produced by Repobility · scan your repo at https://repobility.com/scan/
MethodPathHandlerFramework
Repobility · code-quality intelligence · https://repobility.com
GET/dashboardPython
POST/api/eventsreceive_eventsPython
GET/api/historyget_historyPython
GET/api/incidentsget_incidentsPython
GET/api/summaryget_summaryPython
GET/dashboarddashboardPython
GET/healthhealthPython
POST/heartbeatheartbeatPython
POST/outageoutage_reportPython
GET/speedtestspeedtestPython
GET/statusstatusPython
POST/trigger-speedtesttrigger_speedtestPython

Concepts (1)

Page rendered by Aljefra Mapper · scored by Repobility (https://repobility.com)
CategoryNameDescriptionConfidence
Source: Repobility analyzer · https://repobility.com
auto_categoryAutomationautomation60%
Want fix-PRs on findings? Install Repobility's GitHub App · github.com/apps/repobility-bot

Quality Timeline

1 quality score recorded.

View File Metrics

Embed Badge

Add to your README:

![Quality](https://repos.aljefra.com/badge/29443.svg)
Quality BadgeSecurity Badge
Export Quality CSVDownload SBOMExport Findings CSV

BinComp Dependency Hardening

All packages →
2 of this repo's dependencies have been scanned for binary hardening. Grade reflects RELRO / stack canary / FORTIFY / PIE coverage.
Nrequests2.33.1 · 0 gadgets · risk 3687.0Nflask3.1.3 · 0 gadgets · risk 574.2