Beta
2026-09-10
- Changed Site tools: every builder's preview now sits above the fold and shows synthetic sample data instantly (before any channel/location is configured), switching to live data with a visible mode indicator once configured (0.1.454)
2026-09-08
- Fixed a Kick channel-point redemption, gift, raid, or celebration event with a long attached message and long username/reward/gift names no longer produces an overlong chat overlay line. (0.1.452)
- Fixed a Kick celebration, gift, redemption, or raid message with an emote in it now shows the real emote image instead of literal :name: text, matching a normal chat message (0.1.452)
- Added Chat overlay: align=left|right to align messages (and their bubbles) to either edge (0.1.451)
- Changed Chat overlay: the growth-direction URL param is now anchor (the old align spelling still works, same behavior) (0.1.451)
2026-09-07
- Added chat now reacts to a deleted message or a timed-out/banned sender: the apps show it struck through with a reason tag (with a new toggle to hide it instead), and the browser-source chat widget removes it outright (0.1.444)
Public Release
2026-08-13
- Fixed Rumble-based site widgets (chat, stats, viewer count) failed to load any data due to a browser CORS restriction on Rumble's API; they now go through a new server-side proxy. (0.1.399)
2026-08-12
- Fixed literal Unicode emoji in the merged-chat overlay (messages and events), the weather overlay's condition/wind icons, the platform-stats widget's uptime/warning/Rumble-sentiment icons, and the viewer-count widget's warning icon now render as images instead of a missing-glyph box on a Linux OBS/CEF browser source with no installed emoji font. (0.1.399)
- Fixed the merged-chat browser overlay's "hide bot messages" toggle now recognizes Kick's own bot badge (e.g. Kicklet) directly, in addition to a fixed name list, which itself also gained several bot names already known to the Android apps but missing from the widget. (0.1.399)
2026-08-10
- Added every shared Dual IRL link now shows a branded preview image (Twitter/X, Discord, Slack, etc.) instead of a text-only preview. (0.1.399)
- Changed the 7TV widget's chat overlay now reconnects faster after a normal disconnect and backs off more patiently after a rate limit, instead of always using the same generic retry ladder. (0.1.399)
- Changed every site tool, builder, and the privacy policy page now has a consistent page title and social-share (OG) preview matching the rest of the site. (0.1.398)
- Changed 7TV namepaints now default to off. (0.1.392)
- Added Twitch chat badges now render as real per-channel images (subscriber tiers, VIP, moderator, etc.) instead of plain text chips, in
chat.htmland both apps' chat overlays;stats.html/viewer-count.html's Twitch tile no longer depends on the third-party DecAPI proxy. (0.1.392)
2026-08-08
- Added the merged-chat overlay (
chat.html) now renders a sender's active 7TV namepaint (their site-configured gradient or image username color, not yet animation) instead of a flat color — static support on Twitch, Kick only when the namepaint is granted live during the stream — with a builder checkbox to disable it. (0.1.385) - Added the Kick "Sidekick" community-helper role badge now shows its real icon in chat instead of a plain text pill. (0.1.382)
- Added the merged-chat widget can now show Rumble chat (messages, Rants, gifted subs), configured with your Rumble Live-Stream-API URL, matching what the apps already support. (0.1.382)
- Added a
!refreshchatmod/broadcaster-only chat command that re-fetches the merged-chat overlay's 7TV emote set without a page reload. (0.1.382) - Added 7TV "zero-width" emotes now overlay their preceding emote instead of rendering as a separate image, matching 7TV's own recommended display; 7TV emotes rated sexually suggestive are now excluded from the merged-chat overlay by default, with an opt-in "Allow NSFW-rated 7TV emotes" checkbox in the builder. (0.1.382)
2026-08-07
- Added an optional vertical gradient for chat message text color (instead of a single flat color), configurable from the chat overlay builder. (0.1.381)
- Added a real "hide emojis" option (Bro, Stream, and the chat.html widget) that strips literal emoji characters out of a message's text, not just messages that are emoji-only — the existing "hide emoji-only messages" behavior stays as-is for a fully-emoji line. (0.1.381)
- Added the merged-chat overlay's "hide emotes" toggle now also hides a message that would otherwise render blank (matching the apps' behavior); added a new "emote only" display mode (opposite of hide-emotes: shows only the emotes, hiding everything else) that the channel's broadcaster can toggle live from their own chat with
!emoteonly on/!emoteonly off. (0.1.381) - Added the merged-chat overlay's message text now has a stronger, configurable shadow (a solid dark halo directly behind the text, legible over any background) instead of the previous fixed subtle drop-shadow; messages now default to no background bubble (transparent), matching the common streamer-overlay convention, still configurable via the existing background-color field. (0.1.381)
- Added the merged-chat overlay's new-message entrance animation is now configurable (slide from the right, slide from the left, or fade in with no slide), independent of the widget's own horizontal position. (0.1.381)
- Added a new merged Kick + Twitch chat overlay tool at dualirl.com/tools/chat, with a builder exposing platform icons, timestamps, real per-channel badges/emotes (including 7TV), inline sub/gift/redemption/raid events, and message-display options (spacing, fade-out, an events-only mode). (0.1.381)