{"id":39605197,"url":"https://github.com/xerolux/modbridge","last_synced_at":"2026-06-28T09:00:49.512Z","repository":{"id":330176181,"uuid":"1121842843","full_name":"Xerolux/modbridge","owner":"Xerolux","description":"Modbus TCP/RTU proxy manager with Web UI and headless modes. Multi-proxy support, real-time monitoring, multi-arch (x86/ARM).","archived":false,"fork":false,"pushed_at":"2026-06-14T12:46:52.000Z","size":11442,"stargazers_count":0,"open_issues_count":1,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-14T14:02:26.364Z","etag":null,"topics":["1502","502","iot","modbus","modbus-proxy","modbus-tcp","modbus-tcp-server","proxy"],"latest_commit_sha":null,"homepage":"https://xerolux.github.io/modbridge/","language":"Go","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/Xerolux.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"Xerolux","patreon":"Xerolux","ko_fi":"xerolux","buy_me_a_coffee":"xerolux","custom":"https://ts.la/sebastian564489"}},"created_at":"2025-12-23T16:39:03.000Z","updated_at":"2026-06-14T12:46:55.000Z","dependencies_parsed_at":null,"dependency_job_id":"b4ee9501-9ac6-4553-b097-88b41777c5fb","html_url":"https://github.com/Xerolux/modbridge","commit_stats":null,"previous_names":["xerolux/go-modbus-proxy"],"tags_count":43,"template":false,"template_full_name":null,"purl":"pkg:github/Xerolux/modbridge","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xerolux%2Fmodbridge","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xerolux%2Fmodbridge/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xerolux%2Fmodbridge/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xerolux%2Fmodbridge/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Xerolux","download_url":"https://codeload.github.com/Xerolux/modbridge/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xerolux%2Fmodbridge/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34882751,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-28T02:00:05.809Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["1502","502","iot","modbus","modbus-proxy","modbus-tcp","modbus-tcp-server","proxy"],"created_at":"2026-01-18T07:59:30.420Z","updated_at":"2026-06-28T09:00:49.488Z","avatar_url":"https://github.com/Xerolux.png","language":"Go","funding_links":["https://github.com/sponsors/Xerolux","https://patreon.com/Xerolux","https://ko-fi.com/xerolux","https://buymeacoffee.com/xerolux","https://ts.la/sebastian564489","https://github.com/sponsors/xerolux","https://www.buymeacoffee.com/xerolux","https://paypal.me/xerolux"],"categories":[],"sub_categories":[],"readme":"# ModBridge - Modbus TCP Proxy Manager\n\n**Version:** v2.0.4\n\n[![GitHub Release](https://img.shields.io/github/release/xerolux/modbridge.svg?style=for-the-badge)](https://github.com/xerolux/modbridge/releases)\n[![Downloads](https://img.shields.io/github/downloads/xerolux/modbridge/latest/total.svg?style=for-the-badge)](https://github.com/xerolux/modbridge/releases)\n[![GitHub Activity](https://img.shields.io/github/commit-activity/y/xerolux/modbridge.svg?style=for-the-badge)](https://github.com/xerolux/modbridge/commits/main)\n[![License](https://img.shields.io/github/license/xerolux/modbridge.svg?style=for-the-badge)](https://github.com/Xerolux/modbridge/blob/main/LICENSE)\n[![CI](https://github.com/Xerolux/modbridge/actions/workflows/ci.yml/badge.svg)](https://github.com/Xerolux/modbridge/actions/workflows/ci.yml)\n\n[![GitHub Sponsor](https://img.shields.io/github/sponsors/xerolux?logo=github\u0026style=for-the-badge\u0026color=blue)](https://github.com/sponsors/xerolux)\n[![Ko-Fi](https://img.shields.io/badge/Ko--fi-xerolux-blue?logo=ko-fi\u0026style=for-the-badge)](https://ko-fi.com/xerolux)\n[![Buy Me A Coffee](https://img.shields.io/badge/Buy%20Me%20A%20Coffee-xerolux-yellow?logo=buy-me-a-coffee\u0026style=for-the-badge)](https://www.buymeacoffee.com/xerolux)\n[![PayPal](https://img.shields.io/badge/PayPal-xerolux-blue?logo=paypal\u0026style=for-the-badge)](https://paypal.me/xerolux)\n[![Tesla Referral](https://img.shields.io/badge/Tesla-Referral-red?logo=tesla\u0026style=for-the-badge)](https://ts.la/sebastian564489)\n\n![ModBridge Logo](./assets/banner.png)\n\n**ModBridge** ist ein moderner, robuster Modbus TCP Proxy Manager mit einer eleganten Web-Oberfläche. Er ermöglicht das Multiplexing und Management von Modbus-Verbindungen und bietet detailliertes Monitoring, Logging und Sicherheit in einem kompakten, einfach bereitzustellenden Paket.\n\n## 📖 Ausführliche Dokumentation (Wiki)\n\nAlle ausführlichen Informationen zu Konfiguration (Web-UI \u0026 Headless) und Nutzung finden Sie in unserem **[GitHub Wiki](https://github.com/Xerolux/modbridge/wiki)**.\n\n### Schnellzugriff:\n- ⚙️ **[Konfiguration (WebUI \u0026 Headless)](https://github.com/Xerolux/modbridge/wiki/Konfiguration)**\n- 🔧 **[Features \u0026 API](https://github.com/Xerolux/modbridge/wiki/Features-und-API)**\n- 🩺 **[Troubleshooting](https://github.com/Xerolux/modbridge/wiki/Troubleshooting)**\n\n---\n\n## 🚀 Installation mit `modbridge` (empfohlen)\n\nDas Installationsskript übernimmt alles: Binary-Download, systemd-Service mit Autostart und Einrichtung als systemweites CLI-Kommando (`modbridge`).\n\n### Quick Install (einzeilig)\n\n```bash\ncurl -sSL https://raw.githubusercontent.com/Xerolux/modbridge/main/scripts/modbridge.sh | sudo bash -s install\n```\n\n### Schritt für Schritt\n\n```bash\n# 1. Skript herunterladen\ncurl -sSL -o modbridge.sh https://raw.githubusercontent.com/Xerolux/modbridge/main/scripts/modbridge.sh\nchmod +x modbridge.sh\n\n# 2. Installieren (interaktiv mit Menü)\nsudo bash modbridge.sh install\n\n# 3. Danach ist 'modbridge' systemweit verfügbar\nsudo modbridge status\n```\n\n### Was passiert bei der Installation?\n\n| Schritt | Beschreibung |\n|---------|-------------|\n| Architektur erkennen | amd64, arm64 oder arm automatisch erkannt |\n| Variante wählen | Full (mit WebUI) oder Headless (ohne WebUI) |\n| Version wählen | Neueste Release von GitHub, oder ältere wählen |\n| Binary download | Passende Binary nach `/opt/modbridge/modbridge` |\n| Script installieren | Skript nach `/usr/local/bin/modbridge` kopiert |\n| systemd-Service | Service mit Autostart erstellt und gestartet |\n\nNach der Installation startet ModBridge automatisch bei jedem Systemstart. Alle konfigurierten Proxies werden automatisch mitgestartet.\n\n### Alle Befehle\n\n```bash\nmodbridge                          # Interaktives TUI-Menü (whiptail)\nmodbridge install [--auto]         # Installieren (oder Neuinstallation)\nmodbridge update [--auto]          # Aktualisieren\nmodbridge start                    # Service starten\nmodbridge stop                     # Service stoppen\nmodbridge restart                  # Service neustarten\nmodbridge status                   # Status anzeigen\nmodbridge logs [-f]                # Logs (live mit -f)\nmodbridge health                   # Health-Check\nmodbridge config                   # Config bearbeiten (nano/vi)\nmodbridge backup                   # Config + DB sichern\nmodbridge version                  # Version anzeigen\nmodbridge uninstall                # Vollständig entfernen\n```\n\n### Optionen\n\n| Option | Beschreibung |\n|--------|-------------|\n| `--auto` | Automatischer Modus: neueste Version, WebUI, keine Dialoge |\n| `--headless` | Automatischer Modus, Headless-Variante |\n| `--force` | Installation erzwingen (überschreibt bestehende) |\n| `NO_UPDATE=1` | Script-Auto-Update überspringen |\n\n### Selbst-Update\n\nDas Skript prüft bei **jedem Aufruf** automatisch auf eine neuere Version. Falls verfügbar, lädt es die neue Version herunter und startet sich selbst neu. Kein manuelles Eingreifen nötig.\n\n```bash\n# Prüft automatisch auf Script-Updates, dann installieren\nsudo modbridge install\n\n# Update-Prüfung überspringen\nNO_UPDATE=1 sudo modbridge install\n```\n\n### Update \u0026 Neuinstallation — Daten bleiben erhalten\n\nModBridge schützt Ihre Daten bei Updates und Neuinstallationen:\n\n| Aktion | Config (`config.json`) | Datenbank (`modbridge.db`) | Proxies |\n|--------|----------------------|---------------------------|---------|\n| `modbridge update` | **Erhalten** + Backup | **Erhalten** | **Erhalten**, Service wird neugestartet |\n| `modbridge install` (bereits installiert) | **Erhalten** — bietet Update an | **Erhalten** | **Erhalten** |\n| `modbridge install --force` | **Erhalten** + Backup | **Erhalten** | **Erhalten**, Neuinstallation |\n| `modbridge uninstall` | Gelöscht (Backup optional) | Gelöscht (Backup optional) | Gelöscht |\n\n**Update-Prozess im Detail:**\n1. Service wird gestoppt\n2. Config wird automatisch nach `/opt/modbridge/backups/` gesichert\n3. Alte Binary wird als `modbridge.backup.ZEITSTEMPEL` behalten\n4. Neue Binary wird heruntergeladen\n5. Service wird neugestartet\n6. Falls der Start fehlschlägt → automatisches Rollback auf die vorherige Binary\n\n**Neuinstallation** (z.B. nach Versionswechsel Full ↔ Headless):\n```bash\nsudo modbridge install --force\n# Config und DB bleiben erhalten, nur Binary wird ausgetauscht\n```\n\n### Manuelle Backup-Verwaltung\n\n```bash\n# Backup erstellen\nsudo modbridge backup\n# → /opt/modbridge/backups/config-20260401_120000.json\n# → /opt/modbridge/backups/db-20260401_120000.db\n\n# Config bearbeiten\nsudo modbridge config\n\n# Nach Config-Änderungen Service neustarten\nsudo modbridge restart\n```\n\n### Unterstützte Architekturen\n\n| Architektur | System |\n|------------|--------|\n| `amd64` | Intel/AMD 64-bit (Standard Server, PC) |\n| `arm64` | ARM 64-bit (Raspberry Pi 4/5, ARM Server) |\n| `arm` | ARM 32-bit (Raspberry Pi Zero/1/2/3, 32-bit OS) |\n\n---\n\n## 🐳 Docker Deployment\n\nAlternative Installation via Docker Compose:\n\n```yaml\nversion: '3.8'\n\nservices:\n  modbridge:\n    image: ghcr.io/xerolux/modbridge:latest\n    container_name: modbridge\n    restart: unless-stopped\n    ports:\n      - \"8080:8080\"\n      - \"5020-5030:5020-5030\" # Port-Range für Proxies\n    volumes:\n      - ./config.json:/app/config.json\n      - ./data:/app/data\n```\n\n```bash\ndocker-compose up -d\n```\n\n---\n\n## 💻 Web-UI\n\nNach der Installation (Full-Variante) ist die Web-UI erreichbar unter:\n\n```\nhttp://\u003cIP-DES-SERVERS\u003e:8080\n```\n\nDas Admin-Passwort wird beim ersten Start automatisch generiert und in den Logs angezeigt:\n\n```bash\nmodbridge logs | grep -i password\n```\n\n---\n\n## 🛠️ Entwicklung \u0026 Build\n\nMöchten Sie selbst Hand anlegen oder das Projekt aus den Quellen kompilieren?\nInformationen zu `make`-Befehlen, Frontend-Build und mehr finden Sie im Wiki.\n\nLokaler Build:\n```bash\nmake build\n./modbridge\n```\n\n---\n\n## 🤝 Beitragen\nBeiträge sind willkommen! Bitte lesen Sie [CONTRIBUTING.md](CONTRIBUTING.md) für Details.\n\n## 📄 Lizenz\nMIT License - siehe [LICENSE](LICENSE) für Details.\n\n## ✍️ Autor\n- **Xerolux** - [GitHub](https://github.com/Xerolux)\n\n---\n**Version**: 1.0.17 | **Status**: Beta | **Letzte Aktualisierung**: April 2026\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxerolux%2Fmodbridge","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxerolux%2Fmodbridge","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxerolux%2Fmodbridge/lists"}