O que é o useContext ?
O useContext é um gerenciador de estado.
Esse hook nos dá a capacidade de passar dados, configurar dados em nosso aplicativo,
descer a árvore de componentes sem usar prop drill (passar props por vários componentes)
ou uma biblioteca de terceiros como redux.
Um exemplo disso seria o carrinho de compras de um site de uma loja virtual. Nele, você seleciona o produto e os seus dados vão para lá, havendo uma passagem de dados da tela de produtos para o carrinho de compras.