Inspiration
The idea for MemeBattles came from my love for internet culture and interactive Reddit experiences. I wanted to create a fun, engaging, and competitive space where users could battle their memes in themed challenges. Inspired by r/Place, r/Pixelary, and other interactive Reddit experiences, I envisioned a platform where creativity thrives through daily contests and community-driven voting.
Reddit’s Interactive Posts and Devvit offered the perfect opportunity to turn this vision into reality. The hackathon challenge encouraged massively multiplayer, engaging, and discussion-driven applications, and MemeBattles fit right into that theme.
What it does
It's a interactive "Meme Battle" post where users could submit memes based on theme and vote on their favorites. Each contest runs for 24 hour, after which submissions & voting automatically close.
How I built it
I started by exploring Devvit, Reddit’s developer platform, to understand its capabilities. Implemented meme submission and storage by using Reddit’s media upload system to let users submit memes.Stored meme data (title, image URL, votes etc) in Redis for fast retrieval.Updated the meme list dynamically to sort memes by votes in real time. Managed Contest Timers & Expiry.I also implemented a challenge-specific leaderboard directly within the post.
Challenges I ran into
Devvit only allows one render system using Custom Post Type, this means multiple memes cannot be added as separate posts inside the same Meme Battle. Which means all user submissions must be handled within a single post, limiting how new content can be displayed. Another challenge was that Devvit enforces a fixed post height, limiting how much content we can display at once. This was challenging because I needed to showcase memes, voting buttons, leaderboard rankings, and submission options in a limited space. I optimized the layout by using pagination and compact designs, ensuring a smooth experience without overwhelming the UI. Also I faced issues where expired contests still allowed submissions or votes due to delayed state updates.
Accomplishments that I'm proud of
Built a Fully Functional Meme Battle System that allows users to submit memes, vote, and compete in real-time contests within a single post.Used Redis to store memes efficiently.Automatically ends the contest after 24 hour, restricting new submissions and voting to keep gameplay balanced. Implemented one vote per user per meme to keep it fair. Also one meme submission per user per post is allowed so that a user cannot submit multiple memes in single post.
What I learned
Gained hands-on experience with Reddit’s Interactive Post APIs, Devvit’s Redis system, and custom UI rendering. This project was a deep dive into interactive app design, time-based logic, and community-driven engagement, and I’m excited to keep improving it!
What's next for MemeBattles
I want to expand the progressive leaderboard to track top meme creators, most-voted users, and long-term rankings across multiple battles. Adding badges, streaks, and achievements will also encourage more engagement and competition.To implement a separate Leaderboard Widget to display rankings on the subreddit sidebar. I'm looking forward to refine the time-tracking logic and implement more precise state checks to ensure battles end exactly when they should. Right now, moderators can set a theme and start a meme battle, but I’d love to add more customization options—such as adjustable contest durations, custom voting rules, or different battle formats to make each competition unique. To keep the community engaged, I’m looking into how to introduce recurring meme challenges, themed weeks, and possibly allowing users to suggest battle topics. Ways to encourage more discussions in the comments will make MemeBattles a hub for creativity and fun.
Built With
- devvit-sdk
- kapa.ai
- react
- redis
- typescript

Log in or sign up for Devpost to join the conversation.