Practitionist / Practitionist/elluminar_web

Community chat: Stream Chat integration (free ≤1k MAU) with moderation + cost tripwire

Open
#61 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

notifications
Dominant language
TypeScript
Stars
1
Forks
0
Avg merge
17h 2m
Merged PRs (30d)
18

Description

Adds real-time channels alongside in-house discussions (kept as archive). Stream Chat free ≤1,000 MAU / 100 concurrent; paid cliff $399/mo at 1K MAU.

  • src/lib/stream/chat.ts token minting (role mapping, entitled learners only)
  • /learn/community channels: per-course + platform-wide; discussions preserved as archive tab
  • Moderation: Stream moderation config; admin/moderator roles; flags → IntegrityFlag(MESSAGE) → /admin moderation
  • DPDP: Mumbai data region request, retention policy, device-token cleanup on sign-out
  • Nightly MAU tripwire alert before billing cliff

Spec: temp prompt library 05-chat-community.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Read the temp prompt library 05-chat-community spec, then inspect src/lib/stream/chat.ts and the /learn/community and /admin moderation entry points. Done means channels, role-based token minting, moderation flags, DPDP requirements, device-token cleanup, and the nightly MAU billing alert all work together while preserving discussions as an archive tab.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
authentication, authorization, full-stack, observability, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.