Our first effect written in JavaScript to replace an existing C++ effect. Fade effect has been chosen as it has shown to be problematic in the past and would have needed a migration to AnimationEffect anyway.