The advantage is that the EyeDropper allows you to pick the color of any element on the screen, including items that are outside your browser’s window.
The Observer Pattern is about a “one-to-many” relationship from one object called Subject (or publisher) to one or more objects called Listeners (or observers) that get notified when the Subject changes state. Therefore, several listeners could depend on one object to change for them to perform any action.
Offering a good experience is better and more rewarding than any JavaScript framework. Thus, maybe, your users don’t need fancy features but a working app where they perform their tasks and a server side framework is good enough.
The problem with the XMLHttpRequest object is that it does not support promises natively. So, in order to work with the XMLHttpRequest object, you need to wrap it with a promise.