Thanks Matthew I really appreciate the time you took to review my code and your advice. I'll take I look at those resources to continue my journey with react! Thanks for pointing out those mistakes, I know I need to work and practice more to get used to React and stop making those mistakes.Do you think Redux is the right choice for state management? Thanks again Matthew!

By practicing state management, I mean designing and implementing component trees and helper classes in clean ways that properly separate concerns (concerns like page layout, AJAX, animations, event subscription/observation, DOM API encapsulation, testability, etc.).

Redux's FAQ has a good explanation of its tradeoffs:

code of conduct - report abuse