Skip to content

Draft MVP scope and user flows#2

Merged
paulchrisluke merged 2 commits into
ProgrammingBuddies:mainfrom
aservin6:docs/mvp-user-flows
Jun 2, 2026
Merged

Draft MVP scope and user flows#2
paulchrisluke merged 2 commits into
ProgrammingBuddies:mainfrom
aservin6:docs/mvp-user-flows

Conversation

@aservin6
Copy link
Copy Markdown
Contributor

This draft PR adds an initial docs/mvp.md planning document for the first version of the Devvit group activity app.

It covers:

  • proposed MVP scope
  • out-of-scope items for v1
  • Join group user flow
  • weekly check-in user flow
  • basic data to track
  • open questions for mods/maintainers
  • suggested follow-up implementation issues

This is intended as a discussion starting point before implementation begins.

Related issue

Relates to #1

@paulchrisluke paulchrisluke marked this pull request as ready for review May 30, 2026 07:44
@paulchrisluke paulchrisluke self-requested a review May 31, 2026 01:12
Copy link
Copy Markdown
Contributor

@paulchrisluke paulchrisluke left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for putting this draft together @aservin6 . This is a strong first planning contribution and it gives us a useful baseline to work from before anyone starts implementation.

I reviewed the current Devvit docs and want to make a few final MVP decisions so the project does not get stuck in open-ended planning.

The main decision is that we should not block MVP on automatic Reddit group chat creation. I do not currently see a documented Devvit Reddit API method for creating Reddit group chats. The Devvit-supported Reddit-native pieces we can confidently build around are:

  • Devvit Redis for app storage
  • Devvit Scheduler for recurring jobs
  • Reddit private messages
  • Reddit comments
  • Devvit menu actions/forms
  • Subreddit widgets
  • Reddit flair APIs
  • Standard Reddit post/comment surfaces

Because of that, the MVP group connection flow should use Reddit PMs and the original post/comment thread rather than automatic group chat creation.

Final MVP direction:

  1. Join flow

Users should be able to click Join on eligible r/ProgrammingBuddies posts.

When someone clicks Join:

  • If no group record exists yet, the app creates one for that post.
  • The OP becomes the group owner.
  • The joiner is added to the group if the group is open and not full.
  • The group/member state is stored in Devvit Redis.
  • The joiner receives a Reddit PM confirming they joined.
  • The OP receives a Reddit PM notifying them that someone joined.
  • The original post can receive or update a status comment showing that group tracking is active.

For MVP, this should be Direct Join. We should not require OP approval in the first version unless spam or abuse becomes a real issue.

  1. Group coordination

For MVP, the original Reddit post/comment thread should be treated as the group coordination hub.

The app can add a comment such as:

“Group activity tracking is enabled for this post. Current members: 3/5. Members can coordinate in this thread or by Reddit PM.”

Automatic Reddit group chat creation should be moved out of MVP and marked as a future possibility only if Devvit/Reddit exposes a documented API for it.

  1. Storage

Please replace generic “KV” wording with “Devvit Redis.”

The MVP should track at least:

  • source post ID
  • group owner / OP
  • member usernames
  • max group size
  • group status: open, full, closed, removed
  • created timestamp
  • last check-in timestamp
  • activity streak
  • latest check-in result

We do not need a perfect schema yet, but the doc should make it clear that Redis is the planned storage layer.

  1. Weekly check-ins

Weekly check-ins are in MVP.

Use Devvit Scheduler for one recurring weekly job that processes active groups.

The scheduler should:

  • find active groups
  • send PM check-ins to members
  • record responses
  • update streak/status fields in Redis
  • mark groups as active, at risk, or inactive based on responses

We should not design this as one scheduler job per group. One weekly job should process groups centrally.

  1. Activity state

The MVP should have a simple activity status model:

  • Active: recent positive check-in
  • At Risk: missed one check-in
  • Inactive: missed multiple check-ins
  • Closed: closed by OP or mod
  • Removed: removed by mod

This gives users and mods useful information without requiring full leaderboard/badge logic immediately.

  1. Mod controls

Basic mod controls should stay in MVP.

Mods should be able to:

  • close a group
  • remove a group from tracking
  • reset a group’s streak/status
  • override a group status
  • disable tracking for a post

These can be implemented through Devvit menu actions/forms.

  1. Leaderboard and badges

Leaderboard and badges should stay in the project roadmap, but not block the first implementation.

They are still part of the overall project vision. Redis sorted sets, widgets, and flair APIs make this direction technically plausible. However, the first build should prove the Join + tracking + check-in loop before we add scoring, badges, or public rankings.

Requested doc changes before merge:

  • Add a “MVP Decisions” section near the top

  • Replace “KV” with “Devvit Redis”

  • Make Direct Join the approved MVP flow

  • Move approval-based joining to future consideration

  • Move automatic Reddit group chat creation out of MVP

  • Add “Group Coordination Thread” as the MVP connection mechanism

  • Keep weekly check-ins in MVP

  • Keep basic mod controls in MVP

  • Move leaderboard, badges, and weekly sticky recap to Phase 2

  • Add a simple activity status model

  • Add Devvit docs and Devvit Discord under Resources:

After those changes, I think this doc can become the baseline planning document for the project. Then we can split implementation into focused issues:

  1. Devvit app skeleton
  2. Redis group schema
  3. Join action prototype
  4. PM notifications
  5. Group status comment
  6. Weekly scheduler check-in
  7. Check-in response handling
  8. Mod controls
  9. Simple active-groups widget
  10. Phase 2 leaderboard/badges

@aservin6
Copy link
Copy Markdown
Contributor Author

aservin6 commented Jun 1, 2026

Thanks for the detailed review.

I’m working on a revision now that will:

  • add an MVP Decisions section
  • switch KV wording to Devvit Redis
  • make Direct Join the MVP flow
  • move automatic group chat creation, approval-based joining, leaderboard/badges, and sticky recaps out of MVP
  • add the group coordination thread, activity status model, weekly scheduler direction, mod controls, and resources

I’ll push an updated draft shortly for another pass.

@paulchrisluke paulchrisluke merged commit f82818b into ProgrammingBuddies:main Jun 2, 2026
@aservin6 aservin6 deleted the docs/mvp-user-flows branch June 2, 2026 03:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants