An awesome web platform for collecting, playing and sharing music from various streaming platforms.
You can use it on openwhyd.org.
If you want to contribute, please:
- read the contribution guidelines: CONTRIBUTING.md
- then, introduce yourself here: application form
Also, be aware that this project has become open-source very recently, so please be kind and constructive about code quality, and about the management of this project.
Thank you for your understanding! ^^
- Node.js
- MongoDB
- GraphicsMagick or ImageMagick
make
andg++
(for building npm binaries, I had to do this and this)
- Make sure that MongoDB is running
- Make sure that the necessary environment variables are defined (see below)
- Make sure that the database is initialized (provided scripts:
initDB
andinitTeam
, after updaing theemail
andpwd
fields for the admin account) - Make sure that dependencies are installed (
npm install
) - Make sure that Apple Push Notification Service (APNS) certificates are copied in
/whydJS/config/apns
with the following filenames:aps_dev.cert.pem
,aps_dev.key.pem
,aps_prod.cert.pem
,aps_prod.key.pem
, andDev_Whyd.mobileprovision
. (you can test them usingtest_apns.sh
)
npm run run
ornpm start
(forever daemon)- Open http://localhost:8080 (or
WHYD_URL_PREFIX
)
WHYD_GENUINE_SIGNUP_SECRET
(mandatory. a secret key that is used to make sure that sign-ups are legit)WHYD_SESSION_SECRET
(mandatory. a secret key used to sign session cookies)WHYD_DEV_APNS_PASSPHRASE
(mandatory. the passphrase used to de-cypher APNS certificate and key, for iOS push notifications in DEV mode)WHYD_APNS_PASSPHRASE
(mandatory. the passphrase used to de-cypher APNS certificate and key, for iOS push notifications in PRODUCTION mode)WHYD_ADMIN_OBJECTID
(ObjectId of the user that can access to admin endpoints)WHYD_ADMIN_NAME
(Full-text name of the user that can access to admin endpoints)WHYD_ADMIN_EMAIL
(mandatory. Email address of the user that can access to admin endpoints)WHYD_CONTACT_EMAIL
(mandatory. email for users to contact the site's team)WHYD_CRASH_EMAIL
(mandatory when running with forever. email address of the site's administrator)WHYD_URL_PREFIX
(default:http://localhost:8080
)WHYD_PORT
(default:8080
)WHYD_DEV
(default:false
)WHYD_USE_GRAPHICS_MAGICK
(if set tofalse
, imagemagick will be used instead of image manipulation)MONGODB_DATABASE
(default:openwhyd_data
)MONGODB_HOST
(default:localhost
)MONGODB_PORT
(default:27017
)MONGODB_USER
(default: none)MONGODB_PASS
(default: none)SENDGRID_API_USER
(mandatory. email address of sendgrid account to be used for sending emails)SENDGRID_API_KEY
(mandatory. key / password of sendgrid account)SENDGRID_API_FROM_EMAIL
(mandatory. email address of email sender)SENDGRID_API_FROM_NAME
(mandatory. name of email sender)LAST_FM_API_KEY
(mandatory. for lastfm scrobbling)LAST_FM_API_SECRET
(mandatory. for lastfm scrobbling)ALGOLIA_APP_ID
(mandatory. for search index)ALGOLIA_API_KEY
(mandatory. for search index)