A fully-featured e-commerce platform for premium watches, built using modern web development technologies to deliver a seamless shopping experience.
- Global State Management: Powered by
@reduxjs/toolkitandreact-reduxfor efficient state handling - Server-Side Rendering: Built with
Next.jsfor optimized performance and scalability - Internationalization: Supports multiple languages using
next-intl - Rich Data Visualizations: Interactive charts and analytics with
chart.jsandreact-chartjs-2 - Map Integrations: Location services powered by
leafletandreact-leaflet - Media Optimization: Image compression using
browser-image-compressionandsharp - Advanced Animations: Smooth UI animations with
framer-motion - Infinite Scroll: Seamless loading with
react-infinite-scroll-component - Form Validation: User input validation powered by
formikandyup
- Next.js (v14.2.5): React framework for server-side rendering and static site generation
- React (v18): Library for building user interfaces
- React DOM (v18): Package for DOM manipulations
- React Icons: Icon library for enhancing UI
- React Toastify: Notifications and alerts for better UX
- Swiper: Carousel/slider functionality
- Tailwind CSS: Utility-first CSS framework for responsive UI
- DaisyUI: Predefined components for Tailwind CSS
- Redux Toolkit: Advanced global state management
- Redux Persist: Persist and rehydrate state
- React Query: Data-fetching with caching and synchronization
- Axios: Promise-based HTTP client
- React Query: Server state management
- Formik & Yup: Form handling and validation
- Cloudinary: Cloud-based image management
- Sharp: High-performance image processing
- Browser Image Compression: Client-side image optimization
- Leaflet: Interactive maps
- Chart.js: Data visualization
- React Chartjs 2: React components for Chart.js
- TypeScript: Static type checking
- ESLint: Code linting
- Prettier: Code formatting
- Husky: Git hooks automation
Follow these steps to set up and run the application locally:
-
Clone the Repository:
git clone https://github.com/Eng1Mahmoud/watch-store.git cd watch-store -
Install Dependencies:
npm install
-
Start Development Server:
npm run dev
Experience the app live: Watch Store App Demo
We welcome contributions! Please follow these steps:
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
We follow conventional commits specification:
feat:New featuresfix:Bug fixesdocs:Documentation changesstyle:Code style changesrefactor:Code refactoringtest:Test updateschore:Build process or auxiliary tool changes
If you discover any bugs, please create an issue here including:
- Bug description
- Steps to reproduce
- Expected behavior
- Actual behavior
- Screenshots (if applicable)
Mahmoud Mohamed
- GitHub: @Eng1Mahmoud
If you found this project useful, please consider giving it a ⭐️