GithubHelp home page GithubHelp logo

fixme-lausanne / mpdwsgi-web Goto Github PK

View Code? Open in Web Editor NEW
6.0 6.0 0.0 221 KB

Awesome web interface for your so loved mpd-wsgi server

Home Page: http://mpd.fixme.ch

License: MIT License

JavaScript 64.96% CSS 31.70% HTML 3.34%

mpdwsgi-web's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mpdwsgi-web's Issues

Add link to repo

Add a link to the repo, in order to make it easier to report issues or contribute.

Flicking "hacker" badge

The rotating "hacker" badge behaves unsmoothly when its rotation makes the mouse un-hover it (approach the mouse from the right and hover the badge by only a few pixels): instead of completing its rotation (which would be visually the right thing to do), it flickers back and forth, such that its vertical tangent passes by the mouse's location.

It has been observed on Firefox and Chromium on Linux (with the latter presenting a less ugly effect).

The reason is that the rotation effect on the badge actually changes the perceived (2d, projected) width of the badge, and disables the :hover selector. When that happens, the CSS transition is reverted, the badge rotates back to the point where the mouse hovers it again, which re-enables the :hover selector, and so on and so forth.

Although it can be fixed, there is no way to do it using pure CSS.
For reference: 1 2 3

Should we fix it using JS?

Readme is missing

Hey,
You should create a README.md file so every member of fixme-lausanne can know what's the purpose of this repo.

Tasks v2.0.0

  • SideMenu
  • Player
    • basic actions (play, pause, next, previous)
    • progress bar
    • random
    • volume
  • Current playlist (/current)
  • Playlists (/playlists)
  • Albums (/albums)
  • Details of an album (/albums/:albumName)
  • Artists (/artists)
  • Details of an artist (/artists/:artistName)
  • Search
  • Notifications (network errors, mpd errors, db update)
  • File upload

Gracefull degradation for old JS engines

Unsupported browsers should display something along the line of "your browser is not supported because feature X is not available" when the UI cannot load correctly, instead of keeping the "Welcome! Please, take a seat..." message.

E.g. the interface won't work in Internet Explorer 11 on Windows 8.1, because it does not handle generator functions and the parser throws (SCRIPT1005: '(' attendu).

For some ES6 features, the code can be transpiled as a graceful degradation, even using an ad-hoc JS transpiler loaded by the webpage itself, but other features cannot be backported.

Generators can be rewritten to a certain extent to function with pre-ES6 engines (pun intended) (see https://github.com/lpaimen/YieldifyJS), but I am not sure that it can be generalized to all cases.

If we choose to only support the latest, cutting-edge browsers (IE11 is probably not in that category, even if it can still be considered recent), at least don't let the UI give up everything on unsupported browsers and let the user know that it won't work.

Not loading

The message "Welcome! Please, take a seat while we are loading everything." is displayed non-stop along with the loading animation and never disappears on https://mpd.fixme.ch.
If there are some requirements on the browser side it should be stated somewhere.

I tested with the following browsers on Archlinux:

  • Firefox v. 39.0
  • Chromium 43.0.2357.130 (Build de développement) (64 bits)

Improve README

The README is not self-sufficient, as following its instructions won't allow to run a local instance of FFM out of the box.

Missings are:

  • A basic procedure to setup an MPD client (or a mention that one is required)
  • Explanations to configure config.js

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.