Data Structure
Demos
Grocery 1

Grocery 1 - Data Structure

End point: /api/grocery-1/navigation
Used in: Grocery-1, SideNavbar

Output:

[
    {
        category: "Top Categories",
        categoryItem: [
            {
                icon: "Home",
                title: "Home",
                href: "/product/search/Dariry & Eggs"
            },
            ...
        ],
    },
    {
        category: "Top Categories",
        categoryItem: [
            {
                icon: "Chair",
                title: "Chair",
                href: "/product/search/vegetables",
                child: [
                    {
                        title: "Pears, apples, quinces",
                        href: "/product/search/Pears, apples, quinces"
                    },
                ],
            },
            ...
        ],
    },
    ...
]

End point: /api/grocery-1/services
Used in: Grocery-1, Section2

Output:

[
    {
        id: "ee272e30-0309-4e8a-966c-f63410c58289",
        icon: "Truck",
        title: "Fast Delivery",
        description: "Start from $10",
    },
    ...
]

End point: /api/grocery-1/popular-products
Used in: Grocery-1, ProductCarousel - Section3

Output:

[
    {
        id: "8ac53dd8-6418-454f-bbb5-29f0b26ac5a5",
        slug: "nikecourt-zoom-vapor-cage",
        shop: {
            id: "baa3a02b-42da-40c0-852b-3aa292b70704",
            slug: "anytime-buys",
            user: {
                id: "e0d8be78-c530-4f1a-a2df-d082ba2db274",
                email: "Daisy.McLaughlin80@yahoo.com",
                phone: "1-462-772-4274 x931",
                avatar: "...",
                password: "nAGr0Rkf8CLP4Sv",
                dateOfBirth: "1958-06-07T17:14:57.585Z",
                verified: true,
                name: { firstName: "Llewellyn", lastName: "Schmitt" },
            },
            email: "Vida.Simonis@hotmail.com",
            name: "Anytime Buys",
            phone: "(613) 343-9004",
            address: "845 N. Stonybrook Ave. Tonawanda, NY 14210, Denmark",
            verified: false,
            coverPicture: "/assets/images/banners/banner-6.png",
            profilePicture: "/assets/images/faces/propic(5).png",
            socialLinks: {
                facebook: null,
                youtube: null,
                twitter: null,
                instagram: null,
            },
        },
        title: "NikeCourt Zoom Vapor Cage",
        brand: null,
        price: 250,
        size: null,
        colors: [],
        discount: 25,
        thumbnail: "flash-1.png",
        images: ["flash-1.png", "flash-1.png"],
        categories: [],
        status: null,
        reviews: [],
    },
    ...
]

End point: /api/grocery-1/trending-products
Used in: Grocery-1, ProductCarousel - Section4

Output:

[
    {
        id: "8ac53dd8-6418-454f-bbb5-29f0b26ac5a5",
        slug: "nikecourt-zoom-vapor-cage",
        shop: {
            id: "baa3a02b-42da-40c0-852b-3aa292b70704",
            slug: "anytime-buys",
            user: {
                id: "e0d8be78-c530-4f1a-a2df-d082ba2db274",
                email: "Daisy.McLaughlin80@yahoo.com",
                phone: "1-462-772-4274 x931",
                avatar: "...",
                password: "nAGr0Rkf8CLP4Sv",
                dateOfBirth: "1958-06-07T17:14:57.585Z",
                verified: true,
                name: { firstName: "Llewellyn", lastName: "Schmitt" },
            },
            email: "Vida.Simonis@hotmail.com",
            name: "Anytime Buys",
            phone: "(613) 343-9004",
            address: "845 N. Stonybrook Ave. Tonawanda, NY 14210, Denmark",
            verified: false,
            coverPicture: "/assets/images/banners/banner-6.png",
            profilePicture: "/assets/images/faces/propic(5).png",
            socialLinks: {
                facebook: null,
                youtube: null,
                twitter: null,
                instagram: null,
            },
        },
        title: "NikeCourt Zoom Vapor Cage",
        brand: null,
        price: 250,
        size: null,
        colors: [],
        discount: 25,
        thumbnail: "flash-1.png",
        images: ["flash-1.png", "flash-1.png"],
        categories: [],
        status: null,
        reviews: [],
    },
    ...
]

End point: /api/grocery-1/all-products
Used in: Grocery-1, AllProducts - Section5

Output:

[
    {
        id: "8ac53dd8-6418-454f-bbb5-29f0b26ac5a5",
        slug: "nikecourt-zoom-vapor-cage",
        shop: {
            id: "baa3a02b-42da-40c0-852b-3aa292b70704",
            slug: "anytime-buys",
            user: {
                id: "e0d8be78-c530-4f1a-a2df-d082ba2db274",
                email: "Daisy.McLaughlin80@yahoo.com",
                phone: "1-462-772-4274 x931",
                avatar: "...",
                password: "nAGr0Rkf8CLP4Sv",
                dateOfBirth: "1958-06-07T17:14:57.585Z",
                verified: true,
                name: { firstName: "Llewellyn", lastName: "Schmitt" },
            },
            email: "Vida.Simonis@hotmail.com",
            name: "Anytime Buys",
            phone: "(613) 343-9004",
            address: "845 N. Stonybrook Ave. Tonawanda, NY 14210, Denmark",
            verified: false,
            coverPicture: "/assets/images/banners/banner-6.png",
            profilePicture: "/assets/images/faces/propic(5).png",
            socialLinks: {
                facebook: null,
                youtube: null,
                twitter: null,
                instagram: null,
            },
        },
        title: "NikeCourt Zoom Vapor Cage",
        brand: null,
        price: 250,
        size: null,
        colors: [],
        discount: 25,
        thumbnail: "flash-1.png",
        images: ["flash-1.png", "flash-1.png"],
        categories: [],
        status: null,
        reviews: [],
    },
    ...
]

End point: /api/grocery-1/category-based-products
Used in: Grocery-1, AllProducts - Section5

Output:

// called from client
fetch("/api/grocery-1/category-based-products", { params: { category: selectedCategory } })
 
[
    {
        id: "8ac53dd8-6418-454f-bbb5-29f0b26ac5a5",
        slug: "nikecourt-zoom-vapor-cage",
        shop: {
            id: "baa3a02b-42da-40c0-852b-3aa292b70704",
            slug: "anytime-buys",
            user: {
                id: "e0d8be78-c530-4f1a-a2df-d082ba2db274",
                email: "Daisy.McLaughlin80@yahoo.com",
                phone: "1-462-772-4274 x931",
                avatar: "...",
                password: "nAGr0Rkf8CLP4Sv",
                dateOfBirth: "1958-06-07T17:14:57.585Z",
                verified: true,
                name: { firstName: "Llewellyn", lastName: "Schmitt" },
            },
            email: "Vida.Simonis@hotmail.com",
            name: "Anytime Buys",
            phone: "(613) 343-9004",
            address: "845 N. Stonybrook Ave. Tonawanda, NY 14210, Denmark",
            verified: false,
            coverPicture: "/assets/images/banners/banner-6.png",
            profilePicture: "/assets/images/faces/propic(5).png",
            socialLinks: {
                facebook: null,
                youtube: null,
                twitter: null,
                instagram: null,
            },
        },
        title: "NikeCourt Zoom Vapor Cage",
        brand: null,
        price: 250,
        size: null,
        colors: [],
        discount: 25,
        thumbnail: "flash-1.png",
        images: ["flash-1.png", "flash-1.png"],
        categories: [],
        status: null,
        reviews: [],
    },
    ...
]