Inspiration

I reinvented the classic Rock-Paper-Scissors as a team survival challenge! Unlike traditional 1v1 matches, this version tests whether Redditors can:

  • Work together to build something greater
  • Share both risks and rewards

What it does?

A Collaborative Streak Game where:

  • One player begins a streak by choosing a deck (Classic, Animals, or Weapons)
  • Each new player adds to the active streak
  • Every win:
    • +2 points to all current streak members
    • Streak counter increases
  • The player who breaks the streak gets -5 points
  • Streak resets for the next challenger
  • Ties preserve the streak (but award no points)
  • A nested tree structure is created till the streak sustains.

Multiple decks with unique interactions are available for fun:

Classic: Rock-Paper-Scissors Animals: Elephant-Snake-Rat Weapons: Shield-Sword-Spear-Bow

How I built it?

The game was developed as a self-contained Reddit block using Devvit’s native layout system. The architecture consists of four interconnected views:

  • Main menu with deck selection and streak status
  • Gameplay interface with real-time choice selection
  • Dynamic leaderboard tracking participant scores
  • Rules page explaining deck mechanics

All components were implemented within a single file to streamline state management and reduce cross-file dependencies. Devvit’s stacking system enabled precise element positioning while maintaining responsive design.

Challenges I ran into

  • Adapting to Devvit required alternative approaches to React’s standard useEffect patterns.
  • Implementing atomic streak tracking demanded careful Redis transaction design

Accomplishments that I am proud of

I am a mere beginner at React, so Devvit is also completely new for me. I had fun to learn it and use it to my best of abilities.

What I learned?

The project yielded valuable learnings:

  • Redis was easy to implement for both leaderboard implementation and streak persistence
  • Devvit’s component library provided sufficient flexibility for game mechanics
  • Single-file architecture reduced debugging complexity without sacrificing functionality

What's next for Streak It!

  • Make it mobile friendly, currently it is not.
  • Introduction of advanced decks with modified scoring systems (a complex deck awards more points)
  • Automated recognition of streak champions through comment tagging
  • Historical streak analytics for participant profiles
  • Subreddit-specific customization options
  • Milestones, and award players for reaching them

Built With

  • devvit-blockview
Share this project:

Updates