Inspiration
The inspiration for VERSUS came from watching Reddit communities like /r/ufc and /r/cars. Fans would manually run "Best Fighter" or "Classic Car" tournaments, but the process was painful. Moderators were often stuck using Paint to manually update brackets, post after post, day after day. It was high-effort, low-tech, and lacked the real-time excitement a tournament deserves. I wanted to build a tool that turned these manual "Paint-edited" posts into a modern looking automated app.
What it does
VERSUS is a full-featured tournament platform built directly for Reddit. It allows moderators to: Instantly generate a bracket by adding participants and photos. Set custom round durations (from 30 minutes to 24 hours). Automate the entire process: the app opens matches, collects votes, advances winners, and updates the bracket view in real-time. Users get to vote daily, watch the competition evolve, and view live statistics
How we built it
The app is built on the Devvit platform using following tech stack: Frontend: React 19 and Tailwind CSS 4, responsive UI. State Management: @tanstack/react-query handles live data syncing, refetching every 5 seconds to keep the bracket current. Backend Logic: A custom bracket generation algorithm that handles any number of participants (up to 64). Data Persistence: Redis is used for all state, modeled to handle atomic vote increments and user session tracking.
Challenges we ran into
One of the biggest hurdles was ensuring voting integrity. We solved this by using Redis hIncrBy for atomic counts. Another challenge was the bracket math. Ensuring that participants advanced correctly through these dynamically generated matches while maintaining a clean UI on both mobile and desktop was a significant design challenge.
Accomplishments that we're proud of
Developing a system that self-regulates, advancing matches the moment the timer hits zero. And a real app that can bring some value and engagement.
What we learned
Redis data modeling, balancing stateless nature of Devvit with the need of a high stateful tournament bracket. Creating UI.
What's next for VERSUS
User Nominations: Allowing the community to suggest participants before the mod starts the bracket. Prediction Brackets: Letting users fill out their own full "prediction" at the start for a separate leaderboard.
Built With
- devvit
- react
- react-query
- redis
- tailwindcss4
- typescript
- vite
Log in or sign up for Devpost to join the conversation.