steveseguin/social_stream

Consolidate your live social messaging streams and much more

1,131

stars

6,417

commits

JavaScript

primary language

Sep 14, 2026

updated

socialstream.ninja/

README

Table of Contents

🥷 Social Stream Ninja

Free, open-source multistream chat, livestream overlays, and audience interaction tools.

Social Stream Ninja logo

GitHub stars Discord GitHub release GitHub License

Website · Download · Guides · Templates · Discord

👀 What is Social Stream Ninja?

Social Stream Ninja (SSN) brings chat from YouTube, Twitch, TikTok, Kick, Facebook Live, and many other platforms into one place. Read and manage your combined chat, feature individual viewer messages, and show customized chat overlays and event alerts in OBS Studio or Streamlabs.

Use SSN as a browser extension or a standalone desktop app for multistreaming, interviews, live events, gaming, and community broadcasts. SSN uses VDO.Ninja’s data transport and also offers WebSocket connections and APIs for custom integrations.

SSN is free to use. Some optional integrations, AI services, and voice providers require their own accounts or paid API access. Capture, replies, and available events vary by platform and connection method.

Social Stream Ninja combined chat interface Viewer messages displayed as livestream overlays

✨ What you can do

  • 💬 Combine and manage chat: Read multiple platforms in one dock, filter messages, queue or pin them, and reply or relay messages where supported.
  • ⭐ Feature viewers: Select a message for your on-stream overlay, or configure automatic featuring.
  • 🎨 Match your stream: Choose chat templates and matching theme packs, customize CSS, or convert a StreamElements chat widget.
  • 🎉 Celebrate events: Show follow, membership, donation, bits, and other supported alerts with animations and sound effects.
  • 🔊 Give chat a voice: Use system text-to-speech, local AI voices, or supported external voice providers.
  • ⚡ Automate interactions: Build Event Flow actions, bot commands, timers, and integrations with Stream Deck, MIDI, webhooks, and OBS.
  • 🤖 Connect AI and custom tools: Use supported AI services, Ollama, APIs, and your own scripts for chat responses and workflows.

🌐 Supported platforms

SSN includes integrations for livestreaming services, social networks, meetings, and community chat. Examples include YouTube, Twitch, TikTok, Kick, Facebook, Instagram, Rumble, Discord, Zoom, Microsoft Teams, Google Meet, Slack, Telegram, and WhatsApp.

Browse supported sites and setup instructions for each platform’s capture method and limitations. Some sources need a pop-out chat; others require an explicit opt-in toggle or authentication. The sources directory contains the capture implementations, including newer and experimental integrations.

🚀 Download and get started

OptionWhere to start
Standalone desktop appDownload for Windows, macOS, or Linux. Manage your chat sources inside the app.
Chrome / Chromium extensionChrome Web Store, or follow the manual installation guide.
Firefox extensionFirefox download and setup. Some Chromium-specific features are unavailable.
Lite web appOpen SSN Lite for a smaller web-only experience with fewer features.

Your first chat overlay

  1. Install and enable SSN. In the desktop app, add your sources. With the extension, open supported chat pages and enable capture from the extension menu.
  2. Check the chat dock. Send a message in your own chat and confirm that it appears in SSN. Keep SSN and the required source pages running.
  3. Choose what to display. Use a consolidated chat overlay for the feed, a featured overlay for selected messages, or an event alert overlay.
  4. Copy the overlay link from SSN. Add it as an OBS or Streamlabs Browser Source, and choose dimensions appropriate for your layout. Generated links include your session settings.
  5. Test before going live. Select a message in the dock to test a featured overlay; use the alert preview to test event effects and audio.

Treat your session ID and password as private. Your sources and overlay links must use matching session settings.

For screenshots and detailed setup, see the getting started guide. Prefer video? Watch the extension installation walkthrough.

Updating

Use the update instructions for your installed version on the download page. Store, manually installed, and desktop builds have different update paths.

Do not uninstall an unpacked extension just to update it: uninstalling deletes its settings. Export a backup, replace the files in the same folder, reload the extension, and refresh your source pages. Updating a hosted overlay does not update your installed capture code.

🎨 Overlays, templates, and sound

Start with the menu’s built-in controls for colors, layout, filtering, and visibility. For a complete visual style, use the templates page or screenshot gallery. Matching packs cover consolidated chat, featured messages, and event alerts.

🔊 Text-to-speech and automation

Choose a voice and test it in the SSN settings before adding it to your broadcast. System speech and browser-generated audio can need different OBS capture methods; the guides cover both.

TaskGuide
Set up voices and capture TTS audioTTS setup
Use a local voice engine or custom endpointLocal AI TTS
Build triggers and actions visuallyEvent Flow editor guide
Use bot commands, MIDI, Stream Deck, or webhooksCommands and integrations
Connect AI tools to the desktop appAI control guide

🧰 Troubleshooting

If chat is missing, check that SSN is enabled, the source is connected, and your dock and overlays have matching session settings. Refresh the source page after installing or reloading the extension. Browser-based capture may pause when a source page is closed, minimized, or suspended.

Platform changes can temporarily break integrations. When reporting an issue, include your SSN version, operating system, browser or desktop app, source platform, and steps to reproduce it. Remove private session links and credentials from screenshots and logs.

🛠️ Source code and development

Looking for the standalone desktop app source? Visit steveseguin/ssn_app. That repository contains the Electron desktop runtime and its build instructions. Installer downloads are available from Social Stream Ninja releases.

This social_stream repository contains the shared web interface, browser extension, overlays, and platform capture scripts used by SSN.

AreaSource or documentation
Platform capturesources/ and sources/websocket/
Shared utilitiesshared/
Standalone web experiencelite/
Custom overlayssampleoverlay.html, themes/, and developer guide
Event payloadsCanonical event reference
Remote commands and APIsAPI documentation

Read AGENTS.md before making changes. Shared capture scripts must work in both the extension and desktop app; keep browser-facing code compatible with the project’s supported runtime and package executable dependencies locally.

Validate settings changes with bash scripts/validate-configs.sh. To enable the repository’s local pre-push checks, run git config core.hooksPath .githooks. Run checks relevant to the area you change; documentation edits do not require launching the desktop app.

💬 Support and contributions

Ask questions in Discord, or open a GitHub issue for bugs, feature requests, and new platform suggestions. Contributions are welcome; support for a requested site depends on access, feasibility, and maintenance effort. Adding an integration does not guarantee ongoing support.

Please follow each platform’s terms when capturing or relaying messages. Automated posting and bots may be restricted by the source platform.

📜 License and privacy

SSN is licensed under GPL-3.0. See the Terms of Service and Privacy Policy. YouTube use is also subject to YouTube’s Terms of Service.

💙 Donations

I condemn Russia’s brutal invasion of Ukraine. 💙💛 Please consider supporting Ukraine.

If you wish to support Steve, donations are gifts, with no exchange of value or service offered or expected in return.

Icons and Media

I do not claim rights of all the icons or images distributed. While I (or contributors) made some of the icons and images, trademarks and logos of third party companies/services are the rights of those respective entities. Use them according to the terms that those entities may offer them under.

Some icons used are licensed as attribution-required:

Communication icons created by Freepik - Flaticon

Announcement icons created by Design Circle - Flaticon

Icon by juicy_fish

Vip icons created by Freepik - Flaticon

Some vectors and icons by SVG Repo

Icons and any additional attribution for credits can be found here

If there is missing attribution or concerns over any media, please contact us.

Credit and contributors

SSN grew from chat.overlay.ninja and earlier community chat-overlay projects. Thank you to everyone contributing code, designs, translations, testing, and support.

Contributors to Social Stream Ninja

Contributors

(top 30 of 34)

steveseguin

6,214 commits

lindenkron

48 commits

Riverlance

41 commits

steveseguin/social_stream

Consolidate your live social messaging streams and much more

1,131

stars

6,417

commits

JavaScript

primary language

Sep 14, 2026

updated

socialstream.ninja/

README

Table of Contents

🥷 Social Stream Ninja

Free, open-source multistream chat, livestream overlays, and audience interaction tools.

Social Stream Ninja logo

GitHub stars Discord GitHub release GitHub License

Website · Download · Guides · Templates · Discord

👀 What is Social Stream Ninja?

Social Stream Ninja (SSN) brings chat from YouTube, Twitch, TikTok, Kick, Facebook Live, and many other platforms into one place. Read and manage your combined chat, feature individual viewer messages, and show customized chat overlays and event alerts in OBS Studio or Streamlabs.

Use SSN as a browser extension or a standalone desktop app for multistreaming, interviews, live events, gaming, and community broadcasts. SSN uses VDO.Ninja’s data transport and also offers WebSocket connections and APIs for custom integrations.

SSN is free to use. Some optional integrations, AI services, and voice providers require their own accounts or paid API access. Capture, replies, and available events vary by platform and connection method.

Social Stream Ninja combined chat interface Viewer messages displayed as livestream overlays

✨ What you can do

  • 💬 Combine and manage chat: Read multiple platforms in one dock, filter messages, queue or pin them, and reply or relay messages where supported.
  • ⭐ Feature viewers: Select a message for your on-stream overlay, or configure automatic featuring.
  • 🎨 Match your stream: Choose chat templates and matching theme packs, customize CSS, or convert a StreamElements chat widget.
  • 🎉 Celebrate events: Show follow, membership, donation, bits, and other supported alerts with animations and sound effects.
  • 🔊 Give chat a voice: Use system text-to-speech, local AI voices, or supported external voice providers.
  • ⚡ Automate interactions: Build Event Flow actions, bot commands, timers, and integrations with Stream Deck, MIDI, webhooks, and OBS.
  • 🤖 Connect AI and custom tools: Use supported AI services, Ollama, APIs, and your own scripts for chat responses and workflows.

🌐 Supported platforms

SSN includes integrations for livestreaming services, social networks, meetings, and community chat. Examples include YouTube, Twitch, TikTok, Kick, Facebook, Instagram, Rumble, Discord, Zoom, Microsoft Teams, Google Meet, Slack, Telegram, and WhatsApp.

Browse supported sites and setup instructions for each platform’s capture method and limitations. Some sources need a pop-out chat; others require an explicit opt-in toggle or authentication. The sources directory contains the capture implementations, including newer and experimental integrations.

🚀 Download and get started

OptionWhere to start
Standalone desktop appDownload for Windows, macOS, or Linux. Manage your chat sources inside the app.
Chrome / Chromium extensionChrome Web Store, or follow the manual installation guide.
Firefox extensionFirefox download and setup. Some Chromium-specific features are unavailable.
Lite web appOpen SSN Lite for a smaller web-only experience with fewer features.

Your first chat overlay

  1. Install and enable SSN. In the desktop app, add your sources. With the extension, open supported chat pages and enable capture from the extension menu.
  2. Check the chat dock. Send a message in your own chat and confirm that it appears in SSN. Keep SSN and the required source pages running.
  3. Choose what to display. Use a consolidated chat overlay for the feed, a featured overlay for selected messages, or an event alert overlay.
  4. Copy the overlay link from SSN. Add it as an OBS or Streamlabs Browser Source, and choose dimensions appropriate for your layout. Generated links include your session settings.
  5. Test before going live. Select a message in the dock to test a featured overlay; use the alert preview to test event effects and audio.

Treat your session ID and password as private. Your sources and overlay links must use matching session settings.

For screenshots and detailed setup, see the getting started guide. Prefer video? Watch the extension installation walkthrough.

Updating

Use the update instructions for your installed version on the download page. Store, manually installed, and desktop builds have different update paths.

Do not uninstall an unpacked extension just to update it: uninstalling deletes its settings. Export a backup, replace the files in the same folder, reload the extension, and refresh your source pages. Updating a hosted overlay does not update your installed capture code.

🎨 Overlays, templates, and sound

Start with the menu’s built-in controls for colors, layout, filtering, and visibility. For a complete visual style, use the templates page or screenshot gallery. Matching packs cover consolidated chat, featured messages, and event alerts.

🔊 Text-to-speech and automation

Choose a voice and test it in the SSN settings before adding it to your broadcast. System speech and browser-generated audio can need different OBS capture methods; the guides cover both.

TaskGuide
Set up voices and capture TTS audioTTS setup
Use a local voice engine or custom endpointLocal AI TTS
Build triggers and actions visuallyEvent Flow editor guide
Use bot commands, MIDI, Stream Deck, or webhooksCommands and integrations
Connect AI tools to the desktop appAI control guide

🧰 Troubleshooting

If chat is missing, check that SSN is enabled, the source is connected, and your dock and overlays have matching session settings. Refresh the source page after installing or reloading the extension. Browser-based capture may pause when a source page is closed, minimized, or suspended.

Platform changes can temporarily break integrations. When reporting an issue, include your SSN version, operating system, browser or desktop app, source platform, and steps to reproduce it. Remove private session links and credentials from screenshots and logs.

🛠️ Source code and development

Looking for the standalone desktop app source? Visit steveseguin/ssn_app. That repository contains the Electron desktop runtime and its build instructions. Installer downloads are available from Social Stream Ninja releases.

This social_stream repository contains the shared web interface, browser extension, overlays, and platform capture scripts used by SSN.

AreaSource or documentation
Platform capturesources/ and sources/websocket/
Shared utilitiesshared/
Standalone web experiencelite/
Custom overlayssampleoverlay.html, themes/, and developer guide
Event payloadsCanonical event reference
Remote commands and APIsAPI documentation

Read AGENTS.md before making changes. Shared capture scripts must work in both the extension and desktop app; keep browser-facing code compatible with the project’s supported runtime and package executable dependencies locally.

Validate settings changes with bash scripts/validate-configs.sh. To enable the repository’s local pre-push checks, run git config core.hooksPath .githooks. Run checks relevant to the area you change; documentation edits do not require launching the desktop app.

💬 Support and contributions

Ask questions in Discord, or open a GitHub issue for bugs, feature requests, and new platform suggestions. Contributions are welcome; support for a requested site depends on access, feasibility, and maintenance effort. Adding an integration does not guarantee ongoing support.

Please follow each platform’s terms when capturing or relaying messages. Automated posting and bots may be restricted by the source platform.

📜 License and privacy

SSN is licensed under GPL-3.0. See the Terms of Service and Privacy Policy. YouTube use is also subject to YouTube’s Terms of Service.

💙 Donations

I condemn Russia’s brutal invasion of Ukraine. 💙💛 Please consider supporting Ukraine.

If you wish to support Steve, donations are gifts, with no exchange of value or service offered or expected in return.

Icons and Media

I do not claim rights of all the icons or images distributed. While I (or contributors) made some of the icons and images, trademarks and logos of third party companies/services are the rights of those respective entities. Use them according to the terms that those entities may offer them under.

Some icons used are licensed as attribution-required:

Communication icons created by Freepik - Flaticon

Announcement icons created by Design Circle - Flaticon

Icon by juicy_fish

Vip icons created by Freepik - Flaticon

Some vectors and icons by SVG Repo

Icons and any additional attribution for credits can be found here

If there is missing attribution or concerns over any media, please contact us.

Credit and contributors

SSN grew from chat.overlay.ninja and earlier community chat-overlay projects. Thank you to everyone contributing code, designs, translations, testing, and support.

Contributors to Social Stream Ninja

Contributors

(top 30 of 34)

steveseguin

6,214 commits

lindenkron

48 commits

Riverlance

41 commits

Languages

JavaScript

55.8%

HTML

43.0%