A look at the core flows, rules engine, and the systems that move money, content, and trust between creators and supporters.
Supporter
Subscribes, watches, buys
Creator
Publishes, sells, gets paid
Admin
Reviews, moderates, audits
FanArena Platform
Next.js · Supabase EU · Stripe Connect · Cloudflare R2/Stream
From checkout to payout, including past-due handling and cancellation.
Supporter clicks Subscribe
Stripe Checkout session created
Webhook: subscription.created
Access granted via RLS
Monthly renewal + payout split
Postgres Row-Level Security policies enforce who can see what — at the database layer, not the app layer.
| Resource | Supporter | Creator | Admin |
|---|---|---|---|
| posts (published) | If active sub | Own only | All |
| shop_items | Read all active | Own CRUD | All |
| payouts | — | Own read | Approve / view all |
| accreditations | — | Own submit | Decide |
| users | Self read/update | Self read/update | All read · suspend |
tus resumable upload → R2 → Cloudflare Stream → HLS playback with signed URLs.
Uppy + tus
Resumable up to 2 GB
R2 / Stream
EU-region storage
Signed URLs
Time-limited access
HLS playback
No direct download