Chocobozzz / PeerTube

ActivityPub-federated video streaming platform using P2P directly in your web browser
https://joinpeertube.org/
GNU Affero General Public License v3.0
12.91k stars 1.48k forks source link

Custom homepage for channels #3997

Open Chocobozzz opened 3 years ago

Chocobozzz commented 3 years ago

Like https://github.com/Chocobozzz/PeerTube/issues/3582 but for users to display custom content on their channel's homepage

kimsible commented 3 years ago

Isn't it risky to let users who are not admins to customize UI ?

rigelk commented 3 years ago

What risks are you thinking about?

kimsible commented 3 years ago

What risks are you thinking about?

I mean that let the users customize something about UI should be done carefully.

If you think about a Markdown editor with angular component injection, it's something that won't be understood by most of users except developers.

That type of editor asks some skills, plus Markdown does not allow alignment or everything linked to CSS styles and it is obvious that we can"t let the users inject CSS to not break the full design.

A markdown editor would be very limited at the risk that all the text will stick on the left. If the channel owner can simply add text, this feature would be very close to the channel description.

Maybe we can let the channel owner choose :

Mike35538 commented 2 years ago

I think having the ability for custom channel home pages would be a great addition. Users often need to feature certain videos or playlists for a long period of time as well as draw attention to certain videos. Sometimes these are instructional videos or welcome/introduction videos that aren't going to be popular with lots of views, so they need to be somehow featured. So a custom channel homepage would accomplish that.

However, the instance admin should have ultimate control. The instance admin should be able to choose what is best for their instance by selecting: enable for all channels, enable for select channels, disable for all channels.

If the channel has the permissions to customize their home page then they should have a box that accepts Markdown and custom PeerTube HTML tags much like on the instance homepage configuration.

Alternatively, if there is concern that most users would not be able to customize their page without doing it incorrectly through the Markdown and PeerTube tags, you could make a simple interface where they select and add blocks similar to other video platforms. The user could add sections such as: Latest Uploads, Popular Videos, Single Playlist, Multiple Playlists, Featured Video. Then you can sort the order of their blocks up or down.

Thanks!