atlp-rwanda / dynamites-ecomm-fe

https://dynamites-ecomm-fe.netlify.app/
0 stars 0 forks source link

Implement UI for Landing Page categories section #28

Closed niyobern closed 4 days ago

niyobern commented 1 week ago

Implement UI Section for Landing Page

Description

We need to create a UI section for the landing page using React, TailwindCSS, and Redux. This section includes a header, sidebar with categories, and a main content area displaying products. The goal is to develop a responsive and styled user interface according to the provided design.

Tasks

  1. Basic Components:

    • [ ] Create a ProductCard component to display individual product details.

    • [ ] Create a ProductsList component to map over product data and render multiple ProductCard components.

  2. Main Layout:

    • [ ] Create a MainLayout component to structure the overall page.
    • [ ] Divide the layout into sidebar and main content areas.
  3. Categories Component:

    • [ ] Create a Categories component to display a list of product categories.
    • [ ] Integrate the Categories component into the sidebar of the MainLayout.
  4. Header Component:

    • [ ] Create a simple header component with static information such as delivery, support, and discounts.
  5. Connect Components:

    • [ ] Integrate ProductsList into the main content area of MainLayout.
    • [ ] Ensure components are styled and aligned according to the design.
  6. Dynamic Data:

    • [ ] Fetch product data from the Redux store in the ProductsList component.
    • [ ] Ensure ProductCard displays data dynamically based on the Redux state.
  7. Styling and Responsiveness:

    • [ ] Apply TailwindCSS classes to ensure the design matches the provided image.
    • [ ] Ensure the layout is responsive and looks good on different screen sizes.
  8. Code Review and Testing:

    • [ ] Review code for best practices and readability. [ ] Test the application to ensure all components render correctly and interact as expected.

Acceptance Criteria

Definition of Done

niyobern commented 1 week ago

Implementation Plan

Day 1: Creating Initial Components

Goals:

Tasks:

  1. Redux Setup:

    • Define an initial state and a simple reducer for managing product data.
    • Wrap the app with the Redux Provider.
  2. Basic Components:

    • Create a ProductCard component to display individual product details.
    • Create a ProductsList component to map over product data and render multiple ProductCard components.

Deliverables:

Day 2: Layout and Additional Components

Goals:

Tasks:

  1. Main Layout:

    • Create a MainLayout component to structure the overall page.
    • Divide the layout into sidebar and main content areas.
  2. Categories Component:

    • Create a Categories component to display a list of product categories.
    • Integrate the Categories component into the sidebar of the MainLayout.
  3. Header Component:

    • Create a simple header component with static information such as delivery, support, and discounts.
  4. Connect Components:

    • Integrate ProductsList into the main content area of MainLayout.
    • Ensure components are styled and aligned according to the design.

Deliverables:

Day 3: Dynamic Data and Final Touches

Goals:

Tasks:

  1. Dynamic Data:

    • Fetch product data from the Redux store in the ProductsList component.
    • Ensure ProductCard displays data dynamically based on the Redux state.
  2. Styling and Responsiveness:

    • Apply TailwindCSS classes to ensure the design matches the provided image.
    • Ensure the layout is responsive and looks good on different screen sizes.
  3. Code Review and Testing:

    • Review code for best practices and readability.
    • Test the application to ensure all components render correctly and interact as expected.
  4. Documentation:

    • Document the implementation process and any additional setup required.
    • Update the README file with project setup instructions and usage guidelines.

Deliverables: