Hello,
I am glad to announce the pre-release of a new web client for Mopidy !
I’m not a web developer, so I am not sure it will ever be pretty, but I hope it will be ergonomic.
I have first implemented the most basic features:
- a dual pane with library and tracklist, with drag and drop (from library to tracklist and inside tracklist)
- an informative footer
I don’t have a mopidy subscription, so I couldn’t try with mopidy backend, but it should work with file and local backends.
For now it’s only javascript (React / Redux / Material ui), python package will come in time.
If you want to try it, clone the following repo, then run
The mopidy address is hardcoded in src/index.js
Any kind of feedback would be appreciated !
2 Likes
A first version of Mowecl is now available on Pypi, you can install it with
pip install mopidy-mowecl
I have added support for playlists and search. There are still some minor bugs (seek bar sometimes not refreshing), but it should be working.
Cool, I will take this for a spin when I get the chance.
Version 0.2.0 of Mowecl is published on Pypi, you can install it with
pip install mopidy-mowecl --upgrade
On the menu:
- some UI improvements
- more support for playlists (create / save / delete)
- bookmarks, that are basically playlists with the current track information (not synced with mopidy)
What might come next (in no specific order)
- advanced search
- multi-selection in tracklist (which will give multi drag/delete)
- syncronisation between bookmark/playlist and tracklist (I have implemented most of the logic, but this makes the UI a bit too much sluggish)
- some more tracklist control (repeat and such)
As always, comment, reviews and suggestions are welcome.
On a more developer side of things, I have merged both repositories, all the code is now available at https://github.com/sapristi/mopidy-mowecl. Is there anything more that would be required to have Mowecl listed in the Mopidy extensions ?
Cheers,
I don’t think but simplest to just open a PR on the Mopidy website repo implementing the addition and we’ll go from there.
Ok thanks, I’ll do that !
And since the default dark theme really wasn’t that great, I replaced the light/dark option with custom colors. See https://github.com/sapristi/mopidy-mowecl/tree/develop#theming for example values.
Various minor theme fixes included.
Version 0.3.3 is out !
The version 0.3.4 of Mowecl is available. The main new feature is configurable hotkeys for playback and volume management !
There are also some fixes:
- I put the
theme type
setting back, because it had impact on button outline colors
- I fixed some rendering issues, the UI should lag a bit less (any interaction with mopidy caused a whole rerender, this was especially noticeable when changing the volume).
I am starting to add some server side features:
- syncing of settings and tracklists with the server, which would be mostly usefull when using multiple devices
- restoring of tracklist upon mopidy restart
What does this tracklist restoration do that’s different to Mopidy’s restore_state functionality?
Oh I didn’t know the restore_state functionality existed ! Well I guess I can give up with that then, thanks for letting me know
No worries! I guess my next question is what does the tracklist part of this do:
Saving trackists (playlists) can be done using the m3u backend. Is this similar?
Yes I was a bit quick to write that, what I meant by tracklists here is what I call bookmarks in Mowecl: a playlist + current playback information inside the tracklist (only current track as of now).
So this is a client only notion, mopidy is not aware of them.
I also played a bit with the idea to have the bookmark synced with the tracklist, so that the bookmark updates automatically when the tracklist is edited (track added / moved / removed).
Version 0.3.6 of mowecl is out !
The main change is that mowecl now depends on the bookmarks extension for providing bookmarks, that are now fully server side.
Beware that pre-existing bookmarks will be erased !
Followed by version 0.3.8 (version 0.3.7 went into the warp).
I added some “Favorites” features, the long missing repeat/single/random buttons, and some options to support touchscreens and smartphones:
- options to disable drag’n drop, and for a small_screen layout (single pane)
- many performance optimizations (most of unnecessary renderings were removed)
- buttons visual reaction when browsing the library