ShopHoria is a modern and feature-rich e-commerce platform designed to deliver a seamless shopping experience. With a modular component architecture, state management using Redux, and a responsive layout built with Tailwind CSS, it offers robust functionality for both end-users and administrators.
- Overview
- Key Features
- Tech Stack
- Folder and Component Structure
- Installation and Setup
- Usage
- Screenshots
- Contributing
- License
- Contact
ShopHoria is a full-stack e-commerce application built with React.js and Tailwind CSS. It follows a well-organized component structure, making the codebase scalable and maintainable. Features like product browsing, cart management, user authentication, and seamless checkout provide a smooth and intuitive shopping experience.
- Modular React components for easy customization and scalability.
- Responsive design using Tailwind CSS for mobile, tablet, and desktop views.
- Dynamic product lists, banners, and promotional offers.
- Pagination and navigation using Breadcrumbs.
- Managed global state using Redux Toolkit for a predictable data flow.
- Modular
orebiSlice
for managing cart, products, and user interactions.
- Home: Displays banners, best sellers, and special offers.
- Shop: Categorized product listings with filters and side navigation.
- Product Details: Detailed view of individual products.
- Cart: Manage items, quantities, and total price.
- Account: User registration and login.
-
Frontend:
- React.js
- Tailwind CSS
- Redux Toolkit
-
Build Tools:
- PostCSS
- Webpack
src/
├── components/ # Core reusable components
│ ├── Banner/ # Banner and sub-components
│ │ ├── Banner.js
│ │ └── BannerBottom.js
│ ├── designLayouts/ # Layout and design utilities
│ │ ├── buttons/
│ │ │ └── ShopNow.js
│ │ ├── Flex.js
│ │ ├── Image.js
│ │ ├── List.js
│ │ └── ListItem.js
│ ├── home/ # Home page-specific components
│ │ ├── BestSellers/
│ │ │ └── BestSellers.js
│ │ ├── NewArrivals.js
│ │ └── Sale.js
│ ├── Products/ # Reusable product-related components
│ │ ├── Badge.js
│ │ ├── Heading.js
│ │ └── Product.js
│ ├── SpecialOffers/
│ │ └── SpecialOffers.js
│ ├── YearProduct.js
│ └── Footer/
│ ├── Footer.js
│ └── FooterBottom.js
├── constants/ # Static constants and styles
│ ├── index.js
│ └── style.css
├── pageProps/ # Components for product and shop-related pages
│ ├── productDetails/
│ │ ├── ProductInfo.js
│ │ └── ProductsOnSale.js
│ ├── shopPage/
│ │ ├── Breadcrumbs.js
│ │ ├── Pagination.js
│ │ └── ShopSideNav.js
│ └── SpecialCase.js
├── pages/ # Application pages
│ ├── About.js
│ ├── Account/
│ │ ├── SignIn.js
│ │ └── SignUp.js
│ ├── Cart/
│ │ ├── Cart.js
│ │ └── ItemCard.js
│ ├── Contact.js
│ ├── Home.js
│ ├── Journal.js
│ ├── Offer.js
│ ├── Payment.js
│ ├── ProductDetails.js
│ └── Shop.js
├── redux/ # Redux store and slices
│ ├── orebiSlice.js
│ └── store.js
├── App.js # Main application file
├── index.js # React entry point
├── index.css # Global CSS file
├── tailwind.config.js # Tailwind CSS configuration
└── package.json # Dependencies and scripts
- Banner
- Dynamic promotional banners (
Banner.js
,BannerBottom.js
).
- Dynamic promotional banners (
- Home
- Best sellers (
BestSellers.js
), New arrivals (NewArrivals.js
), and special offers.
- Best sellers (
- Products
Product.js
,Badge.js
, andHeading.js
for product showcases.
- Footer
- Organized footer sections with
Footer.js
,FooterBottom.js
, andFooterListTitle.js
.
- Organized footer sections with
- Node.js installed on your system
- npm or yarn as a package manager
-
Clone the repository:
git clone https://github.com/umar-7w4/ShopHoria.git cd ShopHoria
-
Install dependencies:
npm install
-
Start the development server:
npm start
-
Access the application: Open http://localhost:3000 in your browser.
- Homepage: View featured products, banners, and promotional sections.
- Shop Page: Browse products with filters and navigation.
- Product Details: View detailed information about products.
- Cart: Add, remove, and manage items in your shopping cart.
- User Account: Register, log in, and manage account details.
Contributions are welcome! Please follow the steps below to contribute:
- Fork the repository.
- Create a feature branch:
git checkout -b feature/new-feature
- Commit your changes:
git commit -m "Add new feature"
- Push your branch:
git push origin feature/new-feature
- Open a pull request.
@ Copyright 2024 | ShopHoria | All Rights Reserved