The signin and register user functinality is acheived using Firebase Authentication Service , which is a service provided by Firebase that allows you to authenticate and manage users in your application.
To acheive the cart size, save selected products , process the checkout and manage payment page, I used useReducer and useContext hooks. Reducer function created to manage the states.
Stripe API and Stripe's payment functionality used here to manage the payment feature into this amazon clone application.