referenzprojekt

PushPig

PushPig ist ein Benachrichtigungsdienst für eigene Anwendungen. Ein Aufruf der Schnittstelle genügt, und die Meldung erscheint auf Android, im Browser und auf dem Desktop.

PushPig-Weboberfläche mit Benachrichtigungskanälen und Zustellverlauf

Über das Projekt

Push-Benachrichtigungsdienst, der jedes Gerät über den passenden Weg erreicht: Server-Sent Events in der Weboberfläche, Firebase Cloud Messaging auf Android, Web Push in der Browser-Erweiterung. Das Backend ist in PHP geschrieben, die Oberfläche mit Vue, dazu kommen eine native Android-App und eine Erweiterung für den Desktop-Browser.

Funktionen im Überblick

  • Zustellung über SSE, Web Push und FCM, je nach Zielgerät
  • PHP-Backend mit Vue-Oberfläche
  • Native Android-App
  • Browser-Erweiterung für Desktop-Benachrichtigungen

Warum ich es gebaut habe

Server, Cronjobs und Automatisierungen haben etwas zu melden: ein fehlgeschlagenes Backup, einen abgeschlossenen Import, einen kritischen Schwellwert. E-Mail ist dafür zu langsam und geht im Postfach unter, und fremde Push-Dienste bedeuten, dass jede Meldung über eine Infrastruktur läuft, die man nicht kontrolliert. PushPig ist die Variante, bei der die Zustellung in eigener Hand bleibt und trotzdem alle Geräte erreicht.

Zustellung in Echtzeit

In der geöffneten Weboberfläche läuft die Zustellung über Server-Sent Events, sodass Meldungen ohne Polling und ohne Verzögerung ankommen. Für mobile Geräte übernimmt Firebase Cloud Messaging, damit erreicht eine Meldung das Telefon auch dann, wenn die App geschlossen ist. Die Browser-Erweiterung hängt an Web Push und fragt zusätzlich in kurzen Abständen nach, falls der Push-Kanal einmal wegbricht. Alle drei Wege hängen am selben Backend, sodass sich der Absender nicht um Zielgeräte kümmern muss.

Auf allen Geräten

Zum Dienst gehören drei Clients: eine Vue-Oberfläche zum Verwalten von Kanälen und Verlauf, eine native Android-App für Benachrichtigungen unterwegs und eine Browser-Erweiterung für Meldungen direkt auf dem Desktop. Der Versand selbst braucht nichts davon, ein einzelner HTTP-Aufruf aus einem Skript reicht.

Technische Umsetzung

Das Backend ist in PHP geschrieben, die Weboberfläche mit Vue, Vite und Pinia, die Android-App in Kotlin. Die Sprachverteilung im Projekt zeigt diese Aufteilung deutlich: ein Backend, drei Clients, ein gemeinsames Datenmodell. Genau diese Struktur setze ich auch in Kundenprojekten ein, wenn Web und App zusammenspielen sollen.

Weitere Projekte

Alle Leistungen und Projekte ansehen

Ein ähnliches Projekt im Kopf?

Was in meinen eigenen Produkten steckt, entwickle ich genauso für Ihr Vorhaben, von der Idee bis zum laufenden Betrieb.

Projekt anfragen