https://tetianazaporozhets.github.io/gamershouse/

Этот проект представляет собой веб-приложение, скорее всего, e-commerce (интернет-магазин), в котором можно просматривать продукты, добавлять их в корзину и управлять покупками.

React для построения пользовательского интерфейса.

React Hook Form для валидации и управления формами.

React Router для маршрутизации.

Slick Carousel для слайдера.

CSS Modules для стилизации компонентов.

useState: Для управления состоянием компонентов, например, количества видимых товаров.

useCallback: Для оптимизации функций, предотвращения их переопределения при каждом рендере.

useContext: Для доступа к контексту корзины.

useNavigate: Для программной навигации в React Router.

useMemo: Для мемоизации вычисленных значений, например, для поиска продукта по ID.

useLocation для сброса состояния поиска при изменении маршрута.

useForm (из React Hook Form): Для управления состоянием формы и валидацией.

useReducer для управления состоянием корзины.

кастомный хук useFetch: Для обработки запросов к API.

useParams из react-router-dom используется для извлечения productId из параметров URL.

Компоненты обернуты в memo, чтобы избежать ненужных перерисовок, если пропсы или состояние не изменяются.