A layout design utility and embedded layout for client side app render

Server Side -

A detection script to return each client side platform and make it an environmental variable for duration of connection to server

A script to push a layout object alongside any library get request to server using environmental variable to set case

A design utility/plugin to build layouts for libraries/ season page/ episode page/ any level of library tree (allowing the server admin/owner a way to design how their server library data is rendered dependant on platform - (where the cast list appears, what dimensions the artwork is, what objects are displayed, if text is centre justified, etc.)

a catch script to send default layout object if platform type unrecognised

Client side -

An interpreter to evaluate the returned layout and overwrite the current layout object.

A switch option to opt out from the layout and request default layout

I don’t feel this would be too difficult a feature to implement. The platform type must be returned somewhere as it is available in the attached devices, the client side must have a layout object somewhere already to interpret the data sent from the server library and render appropriately, so overwriting it with a new object at the authentication stage should not be difficult, as the library data is being sent (I imagine as a xml file) and this could be added into this process (there could even be a Boolean set if that platforms layout object has changed server side and version doesn’t match, so object pushes are minimised)

The layout editor may take some work but if it was based off the drag and drop css makers available, whereby there was a sized space for each platform and level and everything available to display was listed (series art/ series description/ cast list etc from the series level of a tv library tree for example) and the user could click a radial next to the object name and it would appear in the space for the user to move etc. The object could have a side bar with options to make the text bold for example. This could be created as a java application likely and then when user is ready, they click create and the application takes the layout and converts it into the format to use as an export to client app.

If you don’t mind me asking… what’s the actual use case you want to address with this suggestion?
It seems your description is rather specific about how this should be implemented but I’m not getting the use case (not saying there is none).

There’s already an existing suggestion asking for an option to have users build some GUI designs / skins / themes. If that’s what you’re asking for, I suggest you comment/vote in that thread in order to avoid distracting votes – though I’m not sure I might have misunderstood what you’re aiming for.

I believe this suggestion refers to applying a layout to your own local player or at least account that the server owner manages. which for the record you would need knowledge of at least qt, js, css/html before you even get into the link libraries, from the 10 mins I spent looking at the windows version of the media player file structure and code. Which if you have that knowledge, at that point, why not just edit the code or write your own player, and you can make your player look what ever way you choose. I’m suggesting a way to pass a json for example, and similar to the way they currently handle language setup, although its a static client side file obvs, that contains all the customisation variables, correctly parameterised for the requesters platform and validated by proxy of it being programmatically generated, from the server at the validation point where the client app requests the server library data and uses it to populate the client screen. To allow the server admin to decide how their content is displayed on the client side no matter who is accessing the shared server. Within reason obviously, to allow full customisation would be ridiculous and dangerous, but a way to change object padding/text colour or move the objects around would be great. does that make sense now? i can try and draw up some uml if its not explained broadly enough or if im not picking up the other post correctly.

I’m just gonna cut to the chase here and tell you what the ninjas won’t, and that’s a NO. Personalization has been limited and wiped ever since the xbmc version was forked to Plex Theater. That’s really the last time layouts were a thing. Many threads have requested local customization over the interface but Plex has only been able to allow small changes and what they will allow. Bubble Gum and Moonlight are the current color choices for the layouts on Android TV, Roku, and AppleTV. Other than that, there used to be a Chrome or Firefox plugin that allowed a wrap that altered the local web version of Plex Web but I never played with that.

Plex has been reluctant on giving total control over the UI to admins. So again, short answer is NO. Nice attempt at voicing your ideas though. Good luck :+1::four_leaf_clover:

1 Like