Single Page Applications (SPA) just updates elements within a web app or site, instead of refreshing the whole page.
Google "component-driven development" and the first search result yields: A development methodology that anchors the build process around components.
Use useRef when you need information that is available regardless of component lifecycle and whose changes should NOT trigger rerenders.
Draw the structure out first. Then identify where your state should live
state, action => (new) state
Organizing and implementing Redux within React!
Some reflections on the process of creating custom components: figuring out where to start + logical sequence of steps to implement
How React uses VDOM to optimize performance, and why this works much better than directly manipulating the DOM in speed and efficiency
"Hooks let us organize the logic inside a component into reusable isolated units."