A React Native e-commerce cart simulation built with Expo and Redux Toolkit.
- Product list with dummy data
- Add product to cart
- Cart quantity controls (increment/decrement)
- Remove single product from cart
- Clear all cart items with confirmation
- Cart total calculation
- Cart tab badge with item count (
99+cap) - Persistent cart state using AsyncStorage + redux-persist
- Expo SDK 53
- React Native 0.79.6
- React 19
- Redux Toolkit
- React Redux
- React Navigation (Bottom Tabs)
- AsyncStorage
- redux-persist
my-shop-app/
├── src/
│ ├── store/
│ │ ├── index.js
│ │ └── cartSlice.js
│ ├── screens/
│ │ ├── ProductList.js
│ │ └── CartScreen.js
│ ├── components/
│ │ ├── ProductCard.js
│ │ └── CartItem.js
│ └── data/
│ └── products.js
├── App.js
└── package.json
npm installnpx expo start -cThen choose one of the targets:
- Android (Expo Go)
- iOS (Expo Go)
- Web
createSliceused forcartSliceconfigureStoreused insrc/store/index.jsuseSelectorused to read cart state in screensuseDispatchused to dispatch cart actions
If you see native module mismatch errors, run:
npx expo install --fix