Inspiration

Reddit is the internet’s ultimate destination for live events. Whether it's an AMA, Game 7 of the NBA Finals, or breaking global news, megathreads are where the world comes to react. But as a megathread scales to tens of thousands of comments, it becomes inherently chaotic. Finding the most critical updates or understanding what just happened requires users to constantly refresh and sift through a firehose of reactions.

We were inspired to bring a modern, curated "live blog" experience natively to Reddit. We wanted to empower moderators to highlight the signal through the noise, transforming standard text posts into premium broadcast hubs without sacrificing the organic community interaction that makes Reddit special.

What it does

ThreadCommander is a Devvit application that turns standard Reddit megathreads into curated, real-time live-blogs.

When a major event happens, a moderator can click a native menu action on any comment: "Feature in Live Hub". Instantly, ThreadCommander executes a synchronized dual-update:

  1. The Premium Hub (New Reddit): The comment is instantly broadcast via WebSockets to a sleek, React-powered Custom Post WebView. The UI features real-time slide-in animations, dynamic timestamps, and a premium dark-mode aesthetic.
  2. The Hybrid Fallback (Old Reddit / Mobile Web): Simultaneously, the app updates a pinned, distinguished moderator comment with a dynamically generated Markdown table of the updates. This ensures that users on legacy clients or the mobile web never miss out on the action.

When the event concludes, the moderator clicks "End Live Thread," permanently archiving the live-blog.

How we built it

ThreadCommander is built entirely on the Devvit SDK using TypeScript, utilizing a strict separation of concerns:

  • The Backend: We utilized Devvit's native kvStore (Redis). To ensure deterministic chronological ordering and avoid race conditions, we bypassed standard JSON arrays entirely and implemented Redis Sorted Sets (zAdd / zRange). All moderator actions are gated via Devvit.addMenuItem with strict permission checks.
  • The Frontend: We built a standalone Vite/React application. We engineered a custom build pipeline that outputs strict relative assets (bundle.js, style.css) into a webroot/ directory, conforming to Devvit's exact Custom Post requirements. The UI was designed with Tailwind CSS, focusing on micro-animations and a premium, responsive layout.
  • The Realtime Bridge: We utilized Devvit's useChannel API alongside window.parent.postMessage to create a seamless, bidirectional communication bridge between the Devvit backend and the React iframe.

Challenges we ran into

Our biggest architectural challenge was the Hybrid Fallback system. We wanted to build a cutting-edge WebView experience, but we refused to leave Old Reddit and mobile web users behind. Engineering a state-machine that perfectly synchronizes a real-time React feed with a mutating Markdown comment required careful handling of Reddit's API rate limits and strict Markdown string escaping (to prevent table-breaking characters in featured comments).

Additionally, integrating a modern Vite frontend into Devvit's WebView required deep-diving into message envelope unwrapping. We had to build a robust handler to decode Devvit's nested devvit-message payloads so the React app could cleanly ingest real-time events.

Accomplishments that we're proud of

We are incredibly proud of building a zero external API, zero external database application. ThreadCommander’s entire backend state, real-time broadcasting, and frontend serving are handled natively through Devvit's infrastructure.

We're also proud of the aesthetic polish. We spent significant time refining the UI—from the pulsing "Live" indicators to the smooth slide-in animations—proving that Devvit Custom Posts can feel like premium, native iOS/Android applications.

What we learned

Building ThreadCommander was a masterclass in the Devvit architecture. We learned how to seamlessly bridge Classic Devvit SDK backend logic with modern, bundled frontend frameworks. We also discovered the immense power of Redis Sorted Sets for maintaining perfectly ordered feeds in highly concurrent environments, which saved us from the headaches of concurrent read/write JSON parsing.

What's next for ThreadCommander

We see ThreadCommander becoming an essential tool for every major sports and news subreddit. Our roadmap includes:

  • Event Tags: Allowing moderators to categorize featured updates (e.g., [Score Update], [Breaking], [Injury]), complete with custom color-coding in the React UI.
  • Rich Media Support: Enabling image and GIF rendering directly within the Live Hub cards.
  • Automated Sentiment Analytics: Highlighting the most upvoted community reactions dynamically alongside the moderator updates.

Built With

Share this project:

Updates