You need implement a web-application based on attached templates. Basically you need to implement web aduio player which will work with audio streams.
References:
- radio stream link:
http://{host}:{port}/radio - swagger link:
http://{host}:{port}/swagger - socket link:
http://{host}:{port} - templates: Templates for task
Tasks:
-
You need to implement a state manager, which will store:
-
Implement socket service:
- tracklist updating (communicating with store) - it is updated when somebody likes. Socket events:
trackUpdated- is emitted with updated data;trackAdded- when someone adding new track to playlist;
- current track - Socket events:
currentTrackUpdated- is emitted with current playing track when track changing or track metadata changing.
- tracklist updating (communicating with store) - it is updated when somebody likes. Socket events:
-
Implement functionallity for reactive searching in tracks list.
When user inputs some text in the field, list must be immediately filtered with keeping positions.
-
Implement hotkeys for player controlling:
All of the tasks must be implemented using any JS reactive library. RxJS is recommended reactive library but you are free to pick any.




