This repo contains the open-source Devvit app for r/ProgrammingBuddies to automate buddy pairing and group activity tracking entirely inside Reddit β no off-platform hosting or moderation.
The Goal:
We get lots of βlooking for buddyβ posts every week. This project will:
- Add a Join button to relevant posts so people can instantly join the OPβs group/buddy pair.
- Automatically create a Reddit group chat for the OP + joiners.
- Send weekly βDid you meet?β pings to track activity.
- Give badges (π₯ Quality, π Sustained Quality, π± Rising) to active groups.
- Show a leaderboard in a subreddit widget and weekly sticky.
If youβre new to Redditβs Devvit API, start here:
This is a self-managed community project. Mods will oversee direction, but contributors own the work.
You can take on one or more roles:
- PM / Requirements β Refine features, maintain the backlog, make sure nothing is blocked.
- Backend Dev β Implement KV store logic, scheduler jobs, and API calls.
- Frontend Dev β Build Devvit UI (post actions, forms, widget).
- Reviewer / QA β Review pull requests, test app features.
- Documentation β Keep README, issues, and Devvit setup guides up to date.
-
Post Action: Join Button
- Auto-attach to new posts with certain flairs/keywords.
- Add joiner to that postβs private queue in KV store.
- OP can cap joiners or mark group full.
-
Group Connection
- PM both OP and joiner when someone joins.
- Optional Reddit group chat creation.
- Stop adding to chat when full.
-
Weekly Check-In
- Scheduler sends βDid you meet?β to all group members.
- One-click Yes = +1 streak.
- No click = streak reset/drop.
-
Leaderboard & Badges
- Track streaks and activity score.
- Apply badges based on thresholds.
- Update leaderboard in widget + weekly sticky comment.
-
Mod Tools
- Remove group.
- Reset streaks.
- Override badge status.
- Change global settings (timeouts, max size).
We track all tasks as GitHub Issues. If you see something missing, open a new issue.
Suggested starter issues:
- Outline MVP feature list (β this README is a start)
- Write user flows for joining a group and weekly check-ins
- Create KV data schema for groups, joiners, streaks
- Build Post Action βJoinβ prototype
- Implement PM + optional group chat creation
- Add Scheduler job for check-ins
- Leaderboard calculation logic
- Widget + sticky updater
- Mod menu actions
- Badge assignment system
- Testing + QA plan
- Pick a role β Decide if you want to PM, code backend, code frontend, review, or document.
- Find or create an issue β Check Issues for open tasks, or make a new one.
- Discuss before coding β Comment on the issue with your plan so we avoid overlap.
- Work in a branch β Name it like
feature/join-button
ordocs/setup-guide
. - Open a Pull Request β Link it to the issue, request at least one reviewer.
- Review & Merge β All merges require approval from someone else.
- Reddit-native only β No external sites, all data in Devvit KV store.
- Open & transparent β All code, issues, and decisions in this repo.
- Mod-controlled longevity β Mod team owns the app + repo.
- Small, iterative steps β Ship simple features first, refine later.
If youβre interested:
- Comment in r/ProgrammingBuddies
- Or open an issue in this repo with
[INTRO]
in the title and tell us what role you want.
Letβs make r/ProgrammingBuddies the easiest place to find β and keep β an active programming buddy. π»π€π₯