Selah-Clips documentation
Bundle OKF 0.1 · 5 conceitos · Gideon-Nobbs7/Selah-Clips
Open source Repository Open in the app JSON README (API)
About
# Selah-Clips documentation
- [Self-serve onboarding](onboarding.md) - how an organization connects its Telegram channel from the Selah app.
- [Users, auth, and memberships](membership.md) - Google sign-in, invite-gated memberships, and video access.
- [README](../README.md) - what Selah-Clips is and the repo layout.
- [AGENTS.md](../AGENTS.md) - the rules every agent and change follows.
- [CHANGELOG](../CHANGELOG.md) - what changed, release by release.
Details
- Kind
- OKF bundles
- Topic
- Communication
- Publisher
- gideon-nobbs7
- Origin
- okf_github
- Category
- dados
- Version
- 0.1
- Last push
- 2026-08-27T22:41:06Z
- Repository state
- ativo
- Language
- Python
- License
- MIT
- Added
- 2026-09-08 09:04:14
- Updated
- 2026-09-08 09:04:14
- Origin id
Gideon-Nobbs7/Selah-Clips:docs/index.md
README
# Selah-Clips
Selah-Clips is a virtual media ecosystem for church media teams. A private Telegram channel is the media vault, used as zero-cost cloud storage; a backend turns it into an on-demand library where a mobile or web app can instantly preview, stream, and share video clips to WhatsApp, TikTok, and Instagram.
It works on a "Space-FS" on-demand streaming model ([spacefs.com](https://spacefs.com/)): raw video files are streamed from the hidden channel in byte-range chunks, so a phone holds only the part it is playing or sharing. No full-file downloads, no local disk footprint. Files up to 2 GB stream because a self-hosted Telegram Bot API server bypasses Telegram's 50 MB cloud limit.
## Architecture
```
[ Admin / Content Creator ]
│ uploads video files via the Telegram client
▼
┌──────────────────────────┐
│ Private Telegram Channel │ Selah-Clips media vault
└───────────┬──────────────┘
│ channel_post updates via Bot API (polling)
▼
┌──────────────────────────┐
│ Listener supervisor │ one daemon, one bot per organization
└───────────┬──────────────┘
│ copies title, file_id, size, duration, thumbnail
▼
┌──────────────────────────┐
│ PostgreSQL │ metadata catalog for the app UI
└───────────┬──────────────┘
▲
│ catalog listings fetched instantly
▼
┌──────────────────────────┐
│ App Backend API Layer │ converts file_ids into stream URLs, proxies bytes
└───────────┬──────────────┘
│ HTTPS REST API / JSON
▼
┌──────────────────────────┐
│ Selah-Clips Client App │ preview, stream, and share (WhatsApp, TikTok, IG etc)
└──────────────────────────┘
```
The manager bot (not shown) drives self-serve onboarding: it creates a managed bot for an organization and captures the channel inside Telegram, so no token is ever copied.
## Repo layout
```
backend/ the API, ingestion/reconciliation/manager workers, and local dev infra
frontend/ the client app (coming later)
```
The client app talks only to the backend API, and never sees the bot token.
See `backend/README.md` to get started.