{"id":46225770,"url":"https://github.com/romestylez/pocketchat","last_synced_at":"2026-04-05T10:02:01.184Z","repository":{"id":341333333,"uuid":"1166570164","full_name":"romestylez/pocketChat","owner":"romestylez","description":"Dein Stream in der Tasche — Chat lesen, schreiben und moderieren, Events von verschiedenen Quellen (Streamlabs, Tipeeestream etc.in Echtzeit, Text-to-Speech, OBS fernsteuern und BelaBox/SRT Stats im Blick. Twitch, Kick und YouTube in einer App.","archived":false,"fork":false,"pushed_at":"2026-03-26T13:37:03.000Z","size":33,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-27T02:58:56.779Z","etag":null,"topics":["android","apple","chat","chat-application","ios","ios-app","irl","kick","multi-chat","multi-chatting-app","streaming","text-to-speech","tts","twitch","youtube"],"latest_commit_sha":null,"homepage":"https://pocketchat.romestylez.dev/","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/romestylez.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-25T11:13:22.000Z","updated_at":"2026-03-22T21:10:10.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/romestylez/pocketChat","commit_stats":null,"previous_names":["romestylez/pocketchat"],"tags_count":56,"template":false,"template_full_name":null,"purl":"pkg:github/romestylez/pocketChat","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/romestylez%2FpocketChat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/romestylez%2FpocketChat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/romestylez%2FpocketChat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/romestylez%2FpocketChat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/romestylez","download_url":"https://codeload.github.com/romestylez/pocketChat/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/romestylez%2FpocketChat/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31307462,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-02T12:59:32.332Z","status":"ssl_error","status_checked_at":"2026-04-02T12:54:48.875Z","response_time":89,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["android","apple","chat","chat-application","ios","ios-app","irl","kick","multi-chat","multi-chatting-app","streaming","text-to-speech","tts","twitch","youtube"],"created_at":"2026-03-03T16:10:48.865Z","updated_at":"2026-04-02T14:02:00.898Z","avatar_url":"https://github.com/romestylez.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# 📱 PocketChat\n\n**Dein Stream. In deiner Tasche.**\n\nDie mobile Companion-App für Live-Streamer — Chat aller Plattformen, Stream-Events und TTS, alles auf deinem Handy.\n\n[![Twitch](https://img.shields.io/badge/Twitch-9146FF?style=for-the-badge\u0026logo=twitch\u0026logoColor=white)](https://twitch.tv)\n[![Kick](https://img.shields.io/badge/Kick-53FC18?style=for-the-badge\u0026logo=kick\u0026logoColor=black)](https://kick.com)\n[![YouTube](https://img.shields.io/badge/YouTube-FF0000?style=for-the-badge\u0026logo=youtube\u0026logoColor=white)](https://youtube.com)\n[![iOS](https://img.shields.io/badge/iOS-000000?style=for-the-badge\u0026logo=apple\u0026logoColor=white)](https://testflight.apple.com/join/3pCw3qb2)\n[![Android](https://img.shields.io/badge/Android-3DDC84?style=for-the-badge\u0026logo=android\u0026logoColor=white)](https://github.com/romestylez/pocketChat/releases)\n\n\u003c/div\u003e\n\n---\n\n## ✨ Was ist PocketChat?\n\nPocketChat ist für Streamer gebaut, die auch abseits des PCs mit ihrem Chat interagieren wollen. Ob beim IRL-Streamen, Kochen oder auf der Couch — Chat und Events immer im Blick.\n\nPocketChat betreibt eine eigene Backend-API. Kein Drittanbieter, keine Datenweitergabe. **Dein Stream, deine Daten.**\n\n---\n\n## 💬 Chat\n\nAlle Plattformen in einer einheitlichen Ansicht.\n\n- **Unified Chat Feed** — alle Plattformen in einer Liste, farblich nach Quelle unterschieden\n- **Nachrichten senden** — direkt vom Handy an Twitch, Kick, YouTube oder alle Plattformen gleichzeitig\n- **Plattform-Switcher** — Icon antippen für die gewünschte Plattform (Twitch → Kick → YouTube → ALL)\n- **Mod-Aktionen** — Nachrichten löschen, User timeouten oder bannen direkt aus dem Chat-Feed (Twitch \u0026 Kick)\n- **Emotes** — Twitch-Emotes sowie BTTV, FFZ und 7TV\n- **Badges** — Subscriber-, Mod-, VIP-, Broadcaster- und alle channel-spezifischen Badges\n- **Chat-Historie** — letzte Nachrichten werden beim Verbinden geladen\n- **Ignore-Liste** — Bots und Spam-User aus dem Chat-Feed filtern\n\n---\n\n## 🎉 Stream Events\n\nEchtzeit-Benachrichtigungen für alles, was in deinem Stream passiert.\n\n**Event-Plattformen verbinden:**\n\n| Plattform | Donationen | Subs | Follows | Cheers | Raids | Channel Points |\n|-----------|-----------|------|---------|--------|-------|----------------|\n| **Twitch EventSub** | — | ✅ | ✅ | ✅ | ✅ | ✅ |\n| **TipeeeStream** | ✅ | ✅ | ✅ | ✅ | — | — |\n| **StreamElements** | ✅ | ✅ | ✅ | ✅ | ✅ | — |\n| **Streamlabs** | ✅ | ✅ | ✅ | ✅ | ✅ | — |\n| **Ko-fi** | ✅ | ✅ | — | — | — | — |\n\n**Was angezeigt wird:**\n- 💸 Donationen mit Betrag, Währung und Nachricht\n- ⭐ Subscriptions mit Monatszahl, Tier (1/2/3) und Gift-Info\n- 🎁 Gift-Bombs — „romestylez hat 5 Subs verschenkt\"\n- ❤️ Follows\n- 💎 Cheers mit Bit-Anzahl\n- ⚔️ Raids mit Zuschauerzahl\n- 🎯 Channel Point Redemptions (Twitch)\n- 🔥 Combo-Events und Watch Streaks (Twitch)\n\n**Event-Filter** — selbst wählen, welche Event-Typen angezeigt werden sollen. Nur Donos und Raids? Kein Problem.\n\n**Event-Replay** — vergangene Events erneut abspielen (TipeeeStream, StreamElements, Streamlabs).\n\n**Teilbares Split-View** — Trennlinie zwischen Events und Chat verschieben für die perfekte Aufteilung.\n\n**„Über dem Chat anzeigen\"** — Events lassen sich über dem Chat ein- oder ausblenden. Wenn deaktiviert, füllt der Chat die volle Bildschirmhöhe. Browser-Tabs mit aktiviertem „Über dem Chat\" bleiben dabei weiterhin sichtbar.\n\n---\n\n## 🔊 Text-to-Speech\n\nLass deinen Stream sprechen — direkt in der App, ohne zusätzliche Drittanbieter-Software. Folgende Anbieter werden unterstützt:\n\n- **On-Device TTS** — kostenlos, funktioniert offline\n- **Amazon Polly** — natürliche Cloud-Stimmen (156 Stimmen, alle Engines)\n- **ElevenLabs** — hochwertige KI-Stimmen\n\nViewer können per Bits, Donationen oder Kanalpunkten TTS-Nachrichten abspielen.\n\n**Chat vorlesen** — der komplette Chat-Feed kann automatisch vorgelesen werden. Plattform wählbar: alle, nur Twitch, nur Kick oder nur YouTube etc.\n\n**Vorlaufstille** — konfigurierbarer Verzögerungspuffer (bis 500 ms), damit Ansagen von trägen Boxen nicht abgeschnitten werden.\n\n**Keep-Alive** — optionaler Stille-Ton im Hintergrund verhindert, dass Bluetooth-Boxen in den Standby wechseln und den Anfang der nächsten TTS-Ansage abschneiden. Intervall frei einstellbar.\n\n---\n\n## 📡 BelaBox / SRT Stats\n\nLive-Überblick über deinen Stream-Output — zwei Modi werden unterstützt:\n\n- **BelaBox (Hardware, Cloud)** — Verbindung über den BelaBox Secret-Link oder die lokale BelaBox IP. Zeigt Live-Bitrate aller Netzwerk-Interfaces sowie Streaming-Status. Stream starten/stoppen und Interfaces deaktivieren direkt aus der App.\n- **BelaBox (Lokal)** — direkte Verbindung zur BelaBox im lokalen Netzwerk über IP und Passwort, ohne Cloud-Umweg.\n- **JSON-Stats-URL** — für alle anderen Quellen die Stats als JSON ausliefern, z.B. eigene SRT-Server. Nur Anzeige der Bitrate, keine Steuerung.\n\n---\n\n## 🎛️ PocketDeck\n\nAnpassbares Streamboard direkt in PocketChat — kein separates Streamdeck nötig.\n\n- **Button-Grid** — frei konfigurierbare Kacheln, Anzahl pro Zeile einstellbar\n- **OBS-Integration** — Szenen wechseln, Quellen und Filter ein-/ausschalten (via OBS WebSocket v5)\n- **OBS Audio-Toggle** — Mikrofon oder Desktop-Audio per Knopfdruck stumm/aktiv schalten, 🔊/🔇 zeigt den Live-Status direkt auf dem Button\n- **Multi Action Buttons** — mehrere OBS-Aktionen auf einen einzigen Button legen (z.B. Quelle einblenden + Audio aktivieren gleichzeitig)\n- **Twitch Chat-Steuerung** — Subs-only, Emote-only, Followers-only und Slow-Mode direkt per Knopf\n- **TTS-Warteschlange leeren** — mit einem Tipp alle ausstehenden TTS-Nachrichten abbrechen\n- **Bestätigungsabfrage** — kritische Aktionen können mit Sicherheitsabfrage gesichert werden\n- **Live-Status** — OBS-Verbindungsstatus und aktive Chat-Modi werden in Echtzeit angezeigt\n- **Zwei Zugangswege** — als eigener Tab in der Navigation und/oder als kompaktes Popup über den ⚡-Button im Chat\n\n\u003e *OBS-Verbindung (IP, Port, Passwort) wird direkt in den PocketDeck-Einstellungen konfiguriert.*\n\n---\n\n## 🔔 Alert Box\n\nIntegrierter WebView für browserbasierte Alert-Overlays.\n\n- StreamElements-, Streamlabs- oder eigene Alert-Box-URL eintragen\n- Alerts spielen direkt in der App ab — kein zweites Gerät nötig\n\n---\n\n## 🎥 DJI Kamera Integration\n\nVerbinde deine DJI Kamera (Osmo, Pocket, Action) direkt per Bluetooth mit PocketChat — ohne Moblin oder iOS.\n\n- **BLE-Verbindung** — automatische Kamerasuche, Auto-Connect beim App-Start optional\n- **RTMP Stream Start / Stop** — Stream direkt von der Kamera starten und stoppen\n- **WiFi-Konfiguration** — SSID und Passwort direkt in der App eintragen\n- **Live-Akkustand** — wird in der App, in der Titelleiste und als OBS Browser Source angezeigt\n- **Browser Source URL** — Akkustand farbkodiert (grün/orange/rot) für OBS, aktualisiert sich automatisch alle 5 Sekunden\n- **Legacy-Modus** — `\u0026legacy=1` gibt nur den reinen Prozentwert zurück, nutzbar in Streamer.bot oder Chat-Commands\n\n\u003e ⚠️ Nicht kompatibel mit Moblin — DJI Kameras erlauben nur eine BLE-Verbindung gleichzeitig.\n\n---\n\n## 🌐 Browser Tab\n\nEingebetteter Browser direkt in der App — frei konfigurierbar.\n\n- **Eigene URL** — beliebige Webseite als Tab einbinden (z.B. Stream-Stats, Dashboards, OBS-Overlays)\n- **Persistente Cookies** — Sitzungen und Logins bleiben auch nach App-Neustart erhalten\n- **Frei benennbar** — Tab-Name selbst wählen (z.B. „Stats\", „Twitch\", „Dashboard\")\n- **JavaScript \u0026 DOM Storage** — volle Browser-Funktionalität, keine Einschränkungen\n\n---\n\n## 🔧 Architektur\n\nPocketChat nutzt eine **eigene Backend-API** als sichere Schnittstelle zwischen App und den Streaming-Plattformen.\n\n```\nTwitch / Kick / YouTube\n         │\n    [PocketChat API]       ← Node.js + WebSocket + OAuth\n         │\n    [PocketChat App]       ← Android (Jetpack Compose) \u0026 iOS (Swift/KMP)\n```\n\n**Warum eine eigene API?**\n- OAuth-Tokens bleiben auf dem eigenen Server\n- Chat wird plattformübergreifend normalisiert und dedupliziert\n- Twitch-Badges, Emotes und Chat-Historie werden serverseitig gecacht\n- Token-Refresh läuft automatisch — keine Unterbrechung\n\n---\n\n## 📋 Voraussetzungen\n\n- Android 8.0+\n- iOS 16.0+ - https://testflight.apple.com/join/3pCw3qb2\n- Twitch-Account für den Login\n- Optional: Kick, YouTube, TipeeeStream, StreamElements, Amazon Polly, ElevenLabs\n- Optional: OBS 28+ mit aktiviertem WebSocket-Server für OBS Remote\n- Optional: DJI Kamera (Osmo Pocket, Action Series) für BLE-Integration\n\n---\n\n## 🚀 Erste Schritte\n\n### App installieren\n\n**Android**\nAPK von der [Releases](../../releases)-Seite herunterladen und auf dem Android-Gerät installieren.\n\n**iOS**\nPocketChat ist für iOS aktuell über TestFlight verfügbar -\u003e https://testflight.apple.com/join/3pCw3qb2 - Bug Reports bitte in meinen Discord [Discord](https://discord.gg/h89JeFHm6n).\n\n### Verbinden\n\n1. **Twitch verbinden** antippen und autorisieren\n2. Optional: Kick oder YouTube unter **Accounts** verbinden\n3. Optional: TipeeeStream oder StreamElements unter **Events → Quellen** verbinden\n4. Optional: pocketDeck unter **Hamburger-Menü → pocketDeck** konfigurieren\n5. Chat-Tab öffnen — du bist live 🎉\n\n---\n\n## 🛣️ Roadmap\n\n- [ ] TTS-Konfiguration pro Event-Typ (z.B. Donationen ab 5 € vorlesen)\n- [ ] Mod-Aktionen: weitere Plattformen (YouTube)\n\n---\n\n## 📄 Lizenz\n\nMIT — mach damit was du willst aber bleibt fair und gib Credits.\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\nMit ♥ gemacht — von einem Nerd, für Streamer.\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fromestylez%2Fpocketchat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fromestylez%2Fpocketchat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fromestylez%2Fpocketchat/lists"}