Inspiration
- Reward authentic creators while protecting the platform from fraud and low‑quality engagement.
- Make integrity transparent: creators should see how quality and safety signals influence payouts.
- Ship a demo that’s practical to run locally, with real schema, realistic data, and explainable scoring.
What it does
- Creator Portal (Streamlit) for sign‑in, dashboards, uploads, payouts, and analytics.
Viewer Activity → Engagement Integrity Score (EIS):
- Computes integrity from schema‑only signals (views likes/comments/reports, device/IP diversity, timing).
Revenue Split Engine:
- Allocates pool revenue to creators by EngUnits weighted by EIS, with trust and early‑velocity modifiers.
Trust, KYC, and Anti‑abuse:
- KYC verification (mock but deterministic and explainable) with document checks.
- Phone Trust Score (optional AbstractAPI) to simulate risk‑aware viewer trust.
Data generator:
- Creates deterministic, FK‑safe sample data and can insert into Supabase.
How we built it
- Streamlit apps for Creator Portal and admin tools.
- Supabase (Postgres + Auth) as the single backend: tables for users, user_info, videos, event, transactions, video_aggregates, revenue windows.
- EIS pipeline that reads event windows, computes transparent features and component scores, and persists aggregates.
- Revenue Split engine that consumes EIS (or computes missing windows on‑demand) to produce creator allocations and transactions.
- KYC and Trust modules that validate personal info/docs and optionally score phones via API.
- Deterministic Faker‑based generator to seed realistic creators, events, videos, transactions, documents.
Challenges we ran into
- Keeping integrity metrics transparent yet robust (no content semantics, only schema signals).
- Reconciling demo speed with realistic scale (windowed queries, indexes, caching).
- Foreign‑key safety and idempotent upserts across multiple related tables.
- Handling API client differences (Supabase response shapes, filter syntax changes).
- Consistent date/phone formats (ISO 8601 for dates, E.164 for phones).
Accomplishments that we're proud of
- End‑to‑end demo: creators can upload, get integrity analytics, and receive EIS‑weighted payouts.
- Fully explainable EIS with component breakdowns and a trend UI.
- Integrated revenue engine that directly consumes EIS and writes auditable transactions.
- FK‑safe data generator that mirrors production‑like tables and relationships.
- Safety‑first payout flow with KYC gating and reserves.
What we learned
- Integrity signals are most actionable when they’re explainable and shared with creators.
- Simple, consistent schemas (and JSON details blobs) make analytics and UI iteration faster.
- Supabase is a strong fit for rapid prototyping with real auth + Postgres.
- Deterministic fake data dramatically accelerates iteration and demo repeatability.
What's next for Bob the Builder
- Harden KYC/Trust integrations (real provider hooks, retries, rate limits, audit logs).
- Expand integrity features (session naturalness, graph‑based device/IP clusters, time‑of‑day baselines).
- Add appeals/workflows for creators to address integrity dips.
- Automate monthly revenue runs with backfills and creator statements.
- CI checks and seed scripts to keep schema/data in sync across environments.
Development tools used to build the project
Languages/frameworks:
- Python 3.11+, Streamlit ### Backend:
- Supabase (Postgres + Auth) ### Analytics/visuals:
- Plotly, pandas, numpy ### Data generation:
- Faker, deterministic seeds ### Optional media tool:
- ffprobe/ffmpeg (for video metadata)
APIs used in the project
- Supabase Python client (tables, Auth)
- AbstractAPI Phone Validation (optional, for phone trust scoring)
Assets used in the project
- Streamlit material icons and built‑in components
- No bundled static assets; charts via Plotly
Libraries used in the project
- streamlit, supabase, python‑dotenv, requests
- Faker, plotly, pandas, numpy
- phonenumbers (phone validation)
The relevant problem statement
How can a short‑video platform fairly monetize creators while preserving integrity and reducing fraud/chargeback risk? This project demonstrates a transparent, schema‑only Engagement Integrity Score that directly informs revenue allocation, with safety‑first payouts gated by KYC and supported by risk‑aware trust signals. It runs locally against a real Postgres schema with realistic sample data and production‑like flows.
Log in or sign up for Devpost to join the conversation.