Daily micro-challenges for Reddit communities
Microlympics is a Reddit Devvit app that brings daily creative challenges to communities, turning everyday interactions into a competitive and fun experience. Each day features a new micro-challenge - from writing 6-word stories to taking photos of your workspace - with real-time leaderboards and community voting.
- 100+ unique challenges rotating daily at 9 AM UTC
- 4 challenge types: Text (📝), Photo (📸), Emoji (😀), ASCII Art (🎨)
- Creative prompts like "Write a 6-word horror story" or "Take a photo of the weirdest item on your desk"
- Daily leaderboards with live updates every 5 minutes
- Weekly cumulative leaderboards tracking overall performance
- Medal system: 🥇 Gold (5 pts), 🥈 Silver (3 pts), 🥉 Bronze (2 pts), Participation (1 pt)
- Top performers displayed with rankings and points
- Submit responses as top-level comments on daily Reddit posts
- Community upvoting determines winners
- Time-limited challenges with countdown timers
- Direct integration with Reddit's comment system
- Daily post creation via cron scheduler
- Real-time leaderboard calculations with Redis caching
- Automatic challenge rotation through 100+ unique prompts
- Post expiry management (7-day retention)
- Check Today's Challenge - View the current challenge prompt and type
- Submit Your Response - Post a top-level comment with your creative response
- Vote & Compete - Upvote other entries to help determine winners
- Track Progress - Monitor daily and weekly leaderboard standings
- Earn Points - Accumulate points through medals and participation
- Devvit: Reddit's developer platform for immersive apps
- React: Modern UI framework
- Express: Backend API server
- Tailwind CSS: Utility-first styling
- TypeScript: Type-safe development
- Redis: Caching and data storage
- Vite: Fast build tool
Make sure you have Node 22 downloaded on your machine before running!
-
Clone the repository
git clone <your-repo-url> cd microlympics
-
Install dependencies
npm install
-
Set up Reddit Developer Account
- Create a Reddit account and connect it to Reddit Developers
- Get your API credentials
-
Configure the app
- Update
src/server/config/app.config.tswith your subreddit settings - Modify challenge settings as needed
- Update
npm run dev: Start development server and test on Redditnpm run build: Build client and server projectsnpm run deploy: Upload new version to Redditnpm run launch: Publish app for reviewnpm run login: Log CLI into Redditnpm run check: Type check, lint, and format code
-
Start development server
npm run dev
-
Test in your subreddit
- The app will be available in your configured dev subreddit
- Use the moderator menu to create test posts
-
Make changes
- Edit source files in
src/ - Changes are hot-reloaded automatically
- Edit source files in
-
Deploy when ready
npm run deploy
microlympics/
├── src/
│ ├── client/ # React frontend
│ │ ├── components/ # Reusable UI components
│ │ ├── pages/ # Main app pages
│ │ └── lib/ # Utility functions
│ ├── server/ # Express backend
│ │ ├── services/ # Business logic
│ │ ├── config/ # App configuration
│ │ └── index.ts # Server entry point
│ └── shared/ # Shared types and utilities
├── devvit.json # Devvit app configuration
└── package.json # Dependencies and scripts
- Creative writing prompts
- Storytelling exercises
- Humor and wordplay
- Visual creativity prompts
- Lifestyle and environment shots
- Artistic photography
- Emoji-based responses
- Visual communication
- Creative emoji usage
- Text-based art creation
- Creative formatting
- Visual text patterns
- 🥇 Gold Medal: 5 points (1st place)
- 🥈 Silver Medal: 3 points (2nd place)
- 🥉 Bronze Medal: 2 points (3rd place)
- Participation: 1 point (all other entries)
Key settings in src/server/config/app.config.ts:
- Subreddit: Configure dev/prod subreddits
- Post Creation: Set frequency and timing
- Leaderboard: Configure update intervals and cache duration
- Points: Customize scoring system
- Challenges: Manage challenge pool and rotation
-
Build the app
npm run build
-
Deploy to Reddit
npm run deploy
-
Launch for review
npm run launch
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.
- Community-driven challenge submissions
- Weekly themed challenges
- Photo challenges with voting
- Collaborative storytelling
- Seasonal tournaments
- Achievement badges and streaks
- Team-based challenges
- Cross-subreddit competitions
Built with ❤️ for the Reddit community