Electron Webapp for iHeartRadio
This is a Node.js JavaScript application, but it is NOT a NPM package. This is solely for desktop use purposes.
In this application, we use the Electron Framework to turn a webpage into a webapp.
Like Spotify, you will be able to access all of iHeartRadio for Linux and MacOS.
Why not Windows? Hm. I wonder why.
We have the normal npm build and a Jakefile if you wish (though I won't QA the Jakefile much).
For this example we will just use npm. To initially install the dependencies:
npm installAnd it is good practice in my opinion to always check to see if any of the ~431 dependencies have updates.
npm audit fixTo run the webapp, you can run either:
npm start OR npm run runNow we can start building. We have several build scripts but here are the most important.
Big thanks to those who work with the electron-builder to make this a lot more easier :)
By default these build for x86/64-bit general systems such as amd64. To build an AppImage and Snap, you can run:
npm run buildTo build for Macintosh/Mac OS systems (yes there is support, this will generate a DMG):
npm run build-macFor the sake of not wasting my time with 32-bit since support for everywhere is slowly dropping, I will only support x86 and Raspberry-Pi arm64. However electron-builder currently is doing weird stuff with arm64 builds which it shouldn't (it's setting up VM's to build which is unneccessary), so for now we will be using the 32-bit arm7l/armhf until I work with the devs to fix this problem :)
We can also use this for testing purposes. To build for armv7l/armhf:
npm run build-armv7lI'm pretty sure Mac's dont run on ARM devices so the above only builds AppImages and Snaps.
This install script is only for linux. This is because the resulting build is a bunch of libraries which has to be installed to many locations so I simplified it and made a decent install script for it. For Mac OS/DMG's it's already bundled in so you don't have to stress about it. You can run
npm install-linuxand that'll take care of it for you.
Help is LOVELY appreciated! Fork and submit a PR. I look forward to seeing you.
This is licensed under the GNU General Public License v3+. You probably already know what it is but for the ones who are new, I'll give you the usual lecture/preamble.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
