Creator hub
A customer watches and can become a creator. Hiding a comment is a separate moderator login.
These are example architectures. They are not affiliated with any company or trademark.
Try the flow here. It is a local sketch of the base, not a live account.
Watch feed
Member on this customer account. Watch and comment.
200 · ranked feed for this member.
Try as
State
Functions
The customer sees three public pieces.
Apps
A full pack is not available to clone.
backend
Video API
Serves the feed, one piece, comments, and the hide action.
Default python-backend
Can swap python-backend, node-backend, go-backend, rust-backend
web
Watch portal
The feed and the player for a member or a channel creator.
Default nextjs
Can swap nextjs, react
mobile
Mobile watch
The same feed on a phone.
Default react-native
Can swap react-native
Who signs in
Customer
customer
Watches the feed and leaves comments. Opening a channel is a state on this account.
Member
Granted at signup. Can watch and comment.
Channel creator
Granted when this customer opens a channel. Same login.
Moderator
moderator
A different login. Hides comments on the channels they are assigned.
Policies
A channel is a state
Opening a channel stays on the customer login. It is not a new user.
Only the moderator hides
Hiding a comment requires the moderator login, not the customer.
API
List the feed
The customer sees three public pieces.
GET /api/v1/videos/feed
requireAuth · Hosted by Video API
Customer
Open a piece
Plays one piece and shows the latest comment.
GET /api/v1/videos/:id
requireAuth · Hosted by Video API
Customer · Moderator
Leave a comment
The customer posts one note under the piece.
POST /api/v1/videos/:id/comments
requireAuth · Hosted by Video API
Customer
Hide a comment
The moderator removes a comment from the channel they cover.
DELETE /api/v1/comments/:id
requireUserType · Hosted by Video API
Moderator
What you see
Feed
- Three pieces
- The channel name
- A mark when this customer is a creator
GET /api/v1/videos/feed
Watch
- The piece title
- The comment
- Hide, only for the moderator
GET /api/v1/videos/:id
Comment
- The draft
- Post
- The comment after it lands
POST /api/v1/videos/:id/comments
Moderation
- The comment
- Hide
- A refusal when the login is not the moderator
DELETE /api/v1/comments/:id