u-wave / web

Web client for üWave, the self-hosted collaborative listening platform.
https://demo.u-wave.net
MIT License
68 stars 15 forks source link
collaborative-listening collaborative-media-player music react u-wave web-app

u-wave-web

Web client for üWave.

Dependencies - Setup - Building - API - License

Screenshot

Dependencies

For running in the browser: something modern. The aim is to support ~IE11+ and other modern browsers (recent Chromes and Firefoxes, at least). If you use something reasonably recent and üWave doesn't work, file a bug!

The server parts of üWave require Node version >= 18.18.0.

Getting Things Working

To run the web client, you need an üWave server to connect to. For development, first install the server:

git clone https://github.com/u-wave/core u-wave-core
cd u-wave-core
npm install
npm start

npm start will run the üWave server on port 6042.

Then in a separate terminal do:

git clone https://github.com/u-wave/web u-wave-web
cd u-wave-web
npm install
npm run dev

This will run the web client on port 6041. Visit http://localhost:6041 to use it!

Building

There are two main build scripts: one for development, and one for production.

The development script runs a local üWave server and auto-reloads the web client when you make changes.

npm run dev

When building the üWave web client for use on a server, the production build should be used instead. It removes costly debugging helpers from the code and minifies everything as much as possible.

npm run prod

The prod script doesn't run a local server. To try out your production build, you can use the standalone serve script:

npm run serve

API

Please see the README in the compiled npm package for API documentation.

License

The üWave web client is licensed under the MIT license.

The default mention sound file comes from a Sonics.io pack and is under the Sonics.io License (archive link).