
Twitter Broadcast Chat
https://github.com/badlogic/twitter-broadcast-chat- Category
- Developer Tools
- Rank
- No. 2070Tools index
Previous survey · No. 2065 ·
- Pricing
- Open Source
- Type
- TOOL
- Builder
- badlogic
- GitHub
- 7 stars
- Date
About
Raspberry Pi extension for X (Twitter) broadcast live chat.
What it does
Connect it to a public X broadcast URL or identifier. It retrieves the existing conversation, then listens for new messages over a WebSocket. Recent posts appear in a compact terminal widget, while a keyboard-controlled overlay exposes the complete loaded history. Profile handles become terminal hyperlinks.
Why it's ranked here
This is a focused, useful companion for watching broadcast reactions without leaving a Pi session. History loading, live updates, duplicate filtering and reconnection form a coherent workflow. The verdict is tempered by reliance on undocumented X and Periscope endpoints, plus development configuration tied to the author's machine.
What's good
It needs no X login for public broadcasts. History pages are deduplicated and sorted before display, while live messages receive the same duplicate protection. Disconnects trigger fresh credentials and reconnection attempts. The overlay preserves bottom-following behavior, supports several navigation keys and wraps ANSI-styled text correctly.
Tradeoffs
The integration depends on a bundled web bearer token and unofficial service endpoints, so upstream changes could break access. It only handles public broadcasts and consumes chat rather than posting messages. State stays in memory and is cleared on session lifecycle events. Type checking requires hard-coded aliases to a local Pi checkout.
How to use it well
Use it when a developer already works inside Pi and wants broadcast reactions beside the editor, or needs a quick terminal transcript from a replay. Start with the compact widget, then open the overlay for context. It does not replace chat participation, moderation, durable archiving or private-broadcast access.
Technical notes+
index.ts registers the two Pi commands, owns an abortable WebSocket loop and refreshes bootstrap credentials after connection failures. twitter-chat-api.ts activates an X guest token, resolves broadcast metadata, exchanges the chat token through the Periscope service, paginates history up to 200 pages and parses nested kind-1 payloads. state.ts deduplicates by UUID and sorts chronologically. widget.ts renders three messages; overlay.ts supplies the scrollable log; links.ts emits OSC 8 profile links. twitter-chat-dump.ts provides the standalone history command. twitter-chat-ws-test.ts and twitter-chat-poll-test.ts are manual diagnostic programs. tsconfig.json contains absolute aliases into the author's local pi-mono checkout.
Observed
- License
- MIT
- Primary language
- TypeScript
- Package shape
- Private ECMAScript module with Pi packages declared as peer dependencies
- Install surface
- Pi can run or permanently install the extension directly from its GitHub URL
- Interfaces
- Two Pi terminal commands plus a standalone npm history-dump command
- Platform support
- Public X live broadcasts and replays, without an X login
- Testing structure
- Two manual diagnostic scripts are present, but package.json defines no test script
Read from README.md, package.json, index.ts, links.ts, state.ts, types.ts, widget.ts, overlay.ts, twitter-chat-api.ts, twitter-chat-dump.ts, twitter-chat-ws-test.ts, twitter-chat-poll-test.ts, tsconfig.json.
What it can do
Stream live chat messages to Twitter/X
Chat messages from users → Live Twitter/X broadcast stream
Connect Raspberry Pi to Twitter/X platform
Raspberry Pi device and Twitter/X API credentials → Active connection to Twitter/X services
Capture real-time chat data
Live chat session or messages → Formatted chat data for broadcasting
Broadcast chat content as live tweets
Chat messages and content → Live tweet stream on Twitter/X
Control Twitter broadcast from Raspberry Pi
User commands and chat data → Managed Twitter/X broadcast session
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.