A modern React Native shopping application built with React Native, TypeScript, Redux Toolkit, RTK Query, and React Navigation.
ShopFlow was created as a portfolio and learning project to demonstrate production-ready React Native architecture, authentication, server state management with RTK Query, client state management with Redux Toolkit, reusable UI components, and modern development best practices.
Status: π§ Active Development
- Login using RTK Query
- JWT Authentication
- Access Token & Refresh Token handling
- Protected Navigation
- Redux Persist authentication state
- Automatic Authorization Header
- Logout functionality
- Product Listing
- Product Details
- Search Products
- Category Filter
- Pull To Refresh
- Loading & Empty States
- Reusable Product Card Component
- API response transformation using RTK Query
- Add Product to Cart
- Update Quantity
- Remove Product
- Persist Cart
- Order Summary
- UPI Deep Link Integration
- Total Price Calculation
- Light Theme
- Dark Theme
- Theme Persistence
- Dynamic Colors
- Redux Toolkit
- RTK Query
- Redux Persist
- Typed Hooks
- Typed Navigation
- Custom Base Query
- Automatic Authorization Headers
src
β
βββ app
β βββ hooks.ts
β βββ store.ts
βββ assets
βββ components
βββ features
β βββ auth
β βββ cart
β βββ products
β βββ theme
βββ hooks
βββ navigation
βββ screens
βββ services
βββ theme
βββ App.tsx
- React Native
- TypeScript
- Redux Toolkit
- RTK Query
- Redux Persist
- React Navigation
- Native Stack
- Bottom Tabs
- RTK Query
- fetchBaseQuery
- Custom baseQuery
- AsyncStorage
- React Native
- React Native Vector Icons
- Safe Area Context
- Login
- Current User
- Refresh Token
- Products List
- Product Details
- Product Categories
Login
β
βΌ
Access Token
β
βΌ
Redux Persist
β
βΌ
prepareHeaders()
β
βΌ
Authenticated API Calls
- createApi
- fetchBaseQuery
- Custom baseQuery
- prepareHeaders
- Query Hooks
- transformResponse
- API Caching
- Auto-generated Hooks
- Auth Slice
- Cart Slice
- Theme Slice
- Reducers
- Actions
- Immer
- Selectors
- Typed Hooks
- Redux Persist
- Responsive Layout
- Search
- Category Chips
- Loading Indicators
- Empty State
- Pull To Refresh
- Dark Mode
- Reusable Components
The Cart module demonstrates UPI deep linking for initiating payments from supported UPI applications.
Supported apps include:
- Google Pay
- PhonePe
- Paytm
- BHIM
- Amazon Pay (UPI)
git clone https://github.com/ashish-lonare/shopflow.gitnpm installcd ios
pod install
cd ..
npm run iosnpm run androidThis project was created to gain hands-on experience with:
- React Native
- TypeScript
- Redux Toolkit
- RTK Query
- Redux Persist
- JWT Authentication
- React Navigation
- Modular Architecture
- Production-ready Mobile Development
- Infinite Scroll Pagination
- Product Reviews
- Wishlist
- Checkout Flow
- Order History
- Address Management
- Push Notifications
- Firebase Analytics
- Offline Support
- Unit Testing
- Detox E2E Testing
- CI/CD Pipeline
Ashish Lonare
Senior Mobile Application Developer
- React Native
- Flutter
- Android
- TypeScript
- Redux Toolkit
GitHub: https://github.com/ashish-lonare
If you found this project helpful, please consider giving it a β on GitHub.







