Using IntersectionObserver to implement a infinite scroller without having to rely on scroll events. A sentinel element triggers the loading of additional elements once it comes into view and is being recycled after the new elements have been attached to the list.