npm i react-hooks-collection
useScrollPosition— memorizes page vertical scrolling location state.
usePersist— tracks and recovers page state automatically.
useOnScreen— detects when an element is visible (total or partial) on the screen as well as specify how much of the element should be visible on screen.
useScript— loads external script and know when it is loaded.
useDebounce— debounces any fast changing value.
useOnClickOutside— detects clicks outside of a specified element.
useElementPosition— fetches distance of some element to the left and top of window.
useElementSize— fetches the size of some element.