A premium, comprehensive ecommerce platform built with React Native Web. This project provides a seamless shopping experience across Web, iOS, and Android from a single codebase.
- Product Catalog: Browse, search, and filter products with advanced filtering and sorting.
- Shopping Cart: Add products, manage quantities, and proceed to secure checkout.
- Order Management: Track orders, view history, manage returns and refunds.
- Stock Management: Real-time inventory tracking for stock managers and admins.
- Multi-Currency: Support for global commerce with currency conversion.
- AI Shopping Assistant: Integrated chatbot to help customers find products, track orders, and navigate the store.
- Analytics Dashboard: Real-time visualization of sales metrics, conversion rates, and customer trends.
- Dark Mode Support: System-wide dark mode with carefully curated color palettes.
- Modern Themes: Ecommerce-optimized themes with vibrant blues, greens, and oranges.
- Responsive Design: Adaptive navigation tailored for all screen sizes.
- Multilingual: Native support for English, French, Arabic (RTL), German, Spanish, Chinese, and Hindi.
- i18n Integration: Dynamic language switching without reload.
- Pages and Roles: Detailed access control matrix.
- Use Cases: Common user scenarios and workflows.
- Commercial Overview: Product features and value proposition.
- Framework: React Native Web for cross-platform excellence.
- State Management: Redux Toolkit with persistent storage.
- Navigation: React Navigation 7 with deep linking.
- Service Layer: Firebase for notifications, analytics, and authentication.
- Persistence: react-native-mmkv for high-performance storage.
- Styling: Vanilla CSS, NativeWind, and a dedicated theme system.
- Node.js 20+
- npm or yarn
- React Native environment (for mobile builds)
-
Clone the repository:
git clone https://github.com/yourusername/ShopyShop.git cd ShopyShop -
Install dependencies:
npm install
-
Start Development:
# Web (Dev Server with Hot Reload) npm run start-web-dev-nossr # Mobile (Metro Bundler) npm start
src/components/: Reusable UI components (Modals, Dropdowns, Cards).src/screens/: Feature-specific screens (Catalog, Cart, Checkout, Orders).src/store/: Redux slices and store configuration.src/database/: Local database services and persistence logic.src/theme/: Theme definitions (Light, Dark, Premium).src/i18n/: Translation files and localization setup.
The project includes a comprehensive set of E2E tests for authentication, admin dashboard, and shopping flows.
# Open Cypress Test Runner
npm run cypress:open
# Run all tests headlessly
npm run cypress:runTo explore the platform with different roles, use the following demo credentials (automatically seeded):
| Role | Password | |
|---|---|---|
| Admin | admin@demo.com |
admin123 |
| Stock Manager | stock@demo.com |
stock123 |
| User (Customer) | user@demo.com |
user123 |
# Linting
npm run lint
# Formatting (Prettier)
npm run formatThis project is licensed under the MIT License.