antrancs / maeve

Maeve, a PWA Apple Music web player with Last.fm support. Built with Vue & Typescript
https://maevemusic.app/
GNU Affero General Public License v3.0
229 stars 25 forks source link

Maeve should be available as a desktop app for macOS and Windows #7

Open igor-makarov opened 5 years ago

igor-makarov commented 5 years ago

Hi, great work on making a web app for AM! I love it.

I was wondering if it is on the roadmap to also release the app as a desktop app based on Electron, for example.

I know some people give grief to Electron apps for memory footprint, but I think anything that takes up less space than iTunes would be welcome :)

antrancs commented 5 years ago

Hi, my plan is to make Maeve a PWA so people can run it across platforms 😀

igor-makarov commented 5 years ago

I think making it a PWA is a great idea, but there are platforms on which PWAs aren't supported yet, for example Safari on macOS. Perhaps Electron-like desktop app package can be good for some users (like me!)

antrancs commented 5 years ago

Okay. I think I'll start with PWA first considering it takes less effort than starting with an Electron app as I don't have experience with it before. After that I will consider a separate Electron app 😀

igor-makarov commented 5 years ago

Cool! Great project! Keep up the good work! 💪

antrancs commented 5 years ago

Hi, Maeve is now a PWA app. You can install it via Chrome on MacOS. There will be an app icon in LaunchPad. I believe Safari will add support for PWA soon 😀

screen shot 2019-02-12 at 12 27 16 pm
igor-makarov commented 5 years ago

Looking good! Safari is adding PWA support, but only on iOS it seems 🤷🏻‍♂️

igor-makarov commented 5 years ago

I've finally tried out as a PWA on my Windows PC and seeing it in a separate bar icon and window is very convenient.

By the way, I've tried to run Nativefier on it and I'm getting some weird behaviour with Apple ID that prevents me from logging in.

I was wondering if you could look at it. I think that Maeve is a very short distance from becoming an Electron app. 💪

antrancs commented 5 years ago

Nativefier looks great but I just took a look at the repo and found this: Nativefier is unmaintained.

And regarding your issue with logging in, I haven't looked into it yet but I found this issue: Use chromium sandbox

I think I experimented with the sandbox option before and determined that it broke the behavior of some websites that show popups. I suspect that it has to do with window.open reverting to standard Chromium behavior (instead of Electron behavior), as described in the above-linked docs. But, maybe I'm misremembering, or perhaps that behavior has changed since I tried it (it was electron v3).

The current Apple Music login uses popup so it might explain your issue. The Lastfm integration that I did for Maeve also uses popup to log in 😅

igor-makarov commented 5 years ago

Yeah. It shows the popup and then a Safari window shows up. Dunno why.

antrancs commented 5 years ago

I'll try looking into that