▲ 3 r/deckbuildingroguelike+3 crossposts

Redeal — A poker-inspired roguelike deckbuilder

Hi Devvit!

We've been building Redeal—a poker-inspired roguelike deckbuilder built on Devvit Web (React/Vite). Players draw custom cards, buy Jokers and consumables from the Shop, trigger multipliers, and compete on community leaderboards.

Behind the Scenes & Tech Decisions:

  • tRPC v11 + Hono Router: We mounted a Hono router on @hono/trpc-server to leverage tRPC v11. This gave us end-to-end type safety between our iframe client and server procedures, which made building the card game logic much cleaner.
  • Compressed Replay Storage: To allow players to watch step-by-step playbacks of completed runs, we log detailed action histories (card deals, selects, discards, scoring steps). To prevent hitting Redis memory quotas, we serialize and compress the game timeline data before persisting it, keeping replay loads fast and within limits.
  • Timezone-Agnostic Daily Resets: Tracking login streaks in a serverless, stateless environment is tricky. We manage rollover calculations strictly in UTC on Redis and use local dismissal states in React to prevent modals from interrupting gameplay.
  • Procedures Caching: Added a caching layer on our tRPC routes (leaderboards and daily challenge configurations) to minimize Redis read queries and speed up the expanded view load times.

Specific feedback we need:

  1. Splash-to-Game Transition: Does the inline splash screen load fast enough on mobile, and is the onboarding/instructions layout clear before opening expanded mode?
  2. Iframe Scaling & Tooltips: Have you noticed any platform-specific layout bugs on Reddit iOS/Android (especially regarding viewport constraints or Radix UI tooltips/popups within the boundaries)?
  3. tRPC Performance: For those using Hono/tRPC or fetch architectures, how has your performance held up under high-concurrency requests (like fast-clicking game boards)?

Happy to answer any questions about the Hono/tRPC integration or state compression. Thanks for the feedback!

u/XanelaOW — 2 days ago