GadgetHaven is a modern, responsive e-commerce platform built with React. It offers advanced functionality, including product filtering, cart and wishlist management, and a seamless user experience. The platform is designed to provide a robust foundation for future enhancements and scalability.
This project incorporates essential React concepts, including:
- Components: Modular and reusable building blocks of the user interface.
- JSX: HTML-like syntax within JavaScript for component structure.
- Props: For passing data between components.
- State: Manages dynamic data and triggers re-renders.
- Lifecycle Methods: Handles side effects, such as data fetching.
- Context API: Global state management for the cart and wishlist.
- React Router: Enables navigation between pages and routes.
- Custom Hooks: Encapsulates reusable logic for better code reusability.
- Context API: Centralized state management for the cart and wishlist, ensuring consistent data across the application.
- Responsive Design: Fully responsive and optimized for all screen sizes.
- Structured Navigation: Intuitive navigation bar for seamless access to different sections.
- Product Filtering and Sorting: Filter products by category and sort them by price.
- Cart and Wishlist Management: Add, view, and manage items in the cart or wishlist.
- Smooth User Experience: Enhanced with smooth scrolling, modals for confirmations, and toast notifications.
- Clone the repository:
git clone <repository_url> - Navigate to the project directory:
cd gadgethaven - Install dependencies:
npm install - Start the development server:
npm start
- Price Limits: Implementing restrictions on the cart's total value.
- Statistics Page: Enhancing with graphical data representations.
- Item Removal: Allowing users to remove items from both the cart and wishlist.
- User Authentication: Adding secure login and registration functionality.
We welcome contributions! To contribute:
- Fork the repository.
- Create a new branch:
git checkout -b feature-name. - Commit your changes:
git commit -m 'Add feature-name'. - Push the branch:
git push origin feature-name. - Submit a pull request for review.
This project is open-source and available under the MIT License.
Feel free to report issues or suggest improvements through the repository's issue tracker.