Home of the Squeezebox™ & Transporter® network music players.
Page 1 of 2 12 LastLast
Results 1 to 10 of 20
  1. #1
    Junior Member
    Join Date
    Mar 2017
    Posts
    6

    Ultralight (preview) - a responsive LMS theme

    Hey, I'm developing a new LMS theme, and I'm releasing it early so others can try it out. While it has functional player controls and I find it useful, it is far from feature complete. Currently it's really only useful as a supplement to the default LMS theme. Check out the github project for more details: https://github.com/millerdev/lms-ultralight

    Disclaimer: currently it requires a patch to the server itself because LMS does not serve the font files (it also does not serve the manifest.json file, but that's less important). My Perl skills are not strong, and I'd appreciate help with getting a better fix implemented in LMS so the patch is not needed. I'd also appreciate tips on the best way to distribute a packaged theme that is easy for less tech-savvy users to install.

  2. #2
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    19,839

    Ultralight (preview) - aresponsive LMS theme

    Hi millerdev,

    > Hey, I'm developing a new LMS theme, and I'm releasing it early so
    > others can try it out.


    Excellent! I've been wanting to see a new web UI for a long, long time.
    And from what I've seen from yours so far you're on the right track to
    something cool!

    > While it has functional player controls and I
    > find it useful, it is far from feature complete. Currently it's really
    > only useful as a supplement to the default LMS theme. Check out the
    > github project for more details: https://github.com/millerdev/lms-ultralight


    I must admit that "ultralight" and "npm" made me jiggle :-). But yeah,
    it's only the build tool which requires hundreds of MBs of downloads.
    The skin itself seems really light indeed.

    > Disclaimer: currently it requires a patch to the server itself because
    > LMS does not serve the font files (it also does not serve the
    > manifest.json file, but that's less important).


    There are a few peculiarities about LMS built-in web server. First of
    all: all static content other than stylesheets and probably JS files
    need to be in the html sub-folder. Eg. all the fonts need to be in
    there. Unfortunately I'm not familiar with React and everything. So I
    don't know where to change this.

    > My Perl skills are not
    > strong, and I'd appreciate help with getting a better fix implemented in
    > LMS so the patch is not needed. I'd also appreciate tips on the best way
    > to distribute a packaged theme that is easy for less tech-savvy users to
    > install.


    A "plugin": I'm currently storing your skin in
    Plugins/UltralightSkin/HTML/ultralight. You'll likely only need an
    install.xml file, but not even the Plugin.pm file. Plus a
    custom-types.conf file: that's where you can register the additional
    content types for the font files.

    Please let me know about any further questions. I've tried to come up
    with a pull request for the plugin stuff. But it doesn't really fit in
    with your current build setup.

    --

    Michael

  3. #3
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    19,839

    Ultralight (preview) - aresponsive LMS theme

    Oh, one more thing: what's the polling interval? When I changed
    something on the player side, it took 20+ seconds to update the web UI.
    --

    Michael

  4. #4
    Junior Member
    Join Date
    Mar 2017
    Posts
    6
    Quote Originally Posted by mherger View Post
    I must admit that "ultralight" and "npm" made me jiggle :-). But yeah,
    it's only the build tool which requires hundreds of MBs of downloads.
    The skin itself seems really light indeed.
    Heh, yeah the build toolchain is a beast. Luckily, as you point out, the skin itself is not that huge. And even the size of the skin could likely be optimized with things like making a custom font, etc. but that's probably premature for now.

    Quote Originally Posted by mherger View Post
    There are a few peculiarities about LMS built-in web server. First of
    all: all static content other than stylesheets and probably JS files
    need to be in the html sub-folder. Eg. all the fonts need to be in
    there. Unfortunately I'm not familiar with React and everything. So I
    don't know where to change this.
    I'm not sure I follow. As far as I know all files, including font files, are located in HTML/ultralight (with exception of one, I think, that is being loaded from the Internet, which should be fixed, but not an issue in this case). JS and CSS are in sub-folders under HTML/ultralight. Are you saying the fonts need to be moved up into the HTML folder?

    Quote Originally Posted by mherger View Post
    I've tried to come up
    with a pull request for the plugin stuff. But it doesn't really fit in
    with your current build setup.
    Hey, thanks for the PR! I'll take a look and see if I can make the build process create the entire plugin automatically. I'm going to be out of the country for a few weeks, so might not have a chance to do much work on it for a bit, but I definitely plan to use what you've provided. Your input is extremely helpful!

    Quote Originally Posted by mherger View Post
    Oh, one more thing: what's the polling interval? When I changed
    something on the player side, it took 20+ seconds to update the web UI.
    Yes, the polling interval is currently very slow (30 seconds) so as not to suck a lot of battery on mobile devices. You can refresh by re-selecting the player in the selector at the top/left. Or just reload. I hope to improve this at some point.

  5. #5
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    19,839
    Quote Originally Posted by millerdev View Post
    I'm not sure I follow. As far as I know all files, including font files, are located in HTML/ultralight (with exception of one, I think, that is being loaded from the Internet, which should be fixed, but not an issue in this case). JS and CSS are in sub-folders under HTML/ultralight. Are you saying the fonts need to be moved up into the HTML folder?
    No, the fonts would need to be inside another sub-folder called html (lower case).

    HTML - parent folder of all skins
    HTML/ultralight - the skin's specific folder
    HTML/ultralight/html - sub-folder for any additional static content, like eg. the fonts

    That all said: as you'll likely have to create a simple plugin for distribution, you can leave the fonts where they are (if that simplifies the build process) and use the plugin code I sent you to register those files as static downloads.

    There's always more than two ways to do one thing :-).
    Michael

    http://www.herger.net/slim-plugins - Spotty, MusicArtistInfo

  6. #6
    Junior Member
    Join Date
    Mar 2017
    Posts
    6
    Added packaging script, updated README and uploaded the first release: https://github.com/millerdev/lms-ult...ses/tag/v0.1.0

    Download plugin: https://github.com/millerdev/lms-ult...kin-v0.1.0.zip

  7. #7
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    19,839

    Ultralight (preview) - aresponsive LMS theme

    Nice! Working as expected.

    (though I'll dig the code to increase the polling rate ;-))

    --

    Michael

  8. #8
    Senior Member Apesbrain's Avatar
    Join Date
    Jun 2005
    Location
    East Coast, USA
    Posts
    1,140
    @millerdev, can you post some screen shots? Very interested!

  9. #9
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    19,839

    Ultralight (preview) - aresponsive LMS theme

    There's one on github.

    --

    Michael

  10. #10
    Senior Member Apesbrain's Avatar
    Join Date
    Jun 2005
    Location
    East Coast, USA
    Posts
    1,140
    Ok, I see it. Looks suited to mobile. Is there​ an equivalent, for instance, to LMS in a desktop browser showing "New Music"?

    Sorry, I'm not at home to try it myself.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •