https://github.com/bpetermann/react-native-shopping-cart
React native shopping cart demo
https://github.com/bpetermann/react-native-shopping-cart
react-native typescript
Last synced: about 1 year ago
JSON representation
React native shopping cart demo
- Host: GitHub
- URL: https://github.com/bpetermann/react-native-shopping-cart
- Owner: bpetermann
- Created: 2023-06-14T12:23:14.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-09-05T19:55:11.000Z (almost 2 years ago)
- Last Synced: 2025-03-29T11:34:32.510Z (over 1 year ago)
- Topics: react-native, typescript
- Language: TypeScript
- Homepage:
- Size: 3.41 MB
- Stars: 4
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# React Native Shopping Cart
This project began as a small playground for getting familiar with React Native ... and well, it still is! Over time, I’ve added quite a few features and tools to it, such as Redux for state management and Cypress for testing.
Currently, you can:
- Like products
- Add products to your cart
- View individual product details
- And more!
The component structure follows *Atomic Design* principles to ensure scalability and maintainability as the project grows.
> [!NOTE]
> Since I don't currently have access to an iOS system, I can't determine how the app will appear on iOS devices
## Getting Started
```
git clone https://github.com/bpetermann/react-native-shopping-cart.git
cd react-native-shopping-cart
npm install
npm start
```
- Press "a" to open the App in
[Android Studio](https://developer.android.com/studio)
- For Android devices scan the QR Code that is displayed in the terminal with the [Expo Go](https://expo.dev/client) app
- Type "npm run web" to view in the browser
## Redux
The app utilizes a Redux store to manage the state of the cart, user and favorites functionality. The Redux store handles the logic and storage for these features, providing a centralized location for accessing and modifying this shared state throughout the application.
## Run Cypress tests
```
npm start web
npm run test
```
## Products
The product api comes from a [dummy json server](https://github.com/bpetermann/shopping-cart-jsonserver)
## Authentication
For demonstration purposes only, no backend logic included
## Dependencies
- [React Navigation](https://reactnavigation.org/)
- [TypeScript](https://www.typescriptlang.org/)
- [i18n-js](https://www.npmjs.com/package/i18n-js)
- [Cypress](https://www.cypress.io/)
- [Redux](https://react-redux.js.org/)
- [Expo](https://expo.dev/)
### Thanks
- Model photo by Wioletta Płonkowska
on Unsplash
- Product photos by Irene Kredenets on Unsplash
### Recommended IDE Setup
[VS Code](https://code.visualstudio.com/)