Product Listing overview

You can use Luigi's Box Product Listing to retrieve and render products for any product listing. The typical use-cases for the product listing are the category and brand pages which your end-users browse when navigating your website. The main benefits include a personalized display of products, ranking based on analytics feedback, and powerful merchandising features available in the Luigi's Box application. Integration is offered via two paths: our frontend JavaScript library Search.js, or our backend Product Listing API for custom implementations.


Choose your integration path

Recommended

Product listing API

Use HTTP API to build a product listing experience for your end-users, which provides unparalleled possibilities.

FE integration

Search.js

Use the frontend library which integrates all of the Luigi's Box Product Listing features in a customizable package.

  • Maximum flexibility: Using the raw API gives developers unparalleled possibilities and control over the integration.
  • Hierarchical filtering: Utilize special filters like category_path and all_categories_path for filtering within a full category hierarchy.
  • Backend data enrichment: A backend integration allows for merging product data from Luigi's Box with internal data sources, such as real-time inventory or custom business rules, before sending it to the client.
  • Simple setup: Follow the same setup as when initializing a standard search, including the loading placeholder for the best user experience.
  • Unified Product Listings: Use the same Search.js component for both standard search results and pre-filtered listings, such as category or brand pages.
  • Customizable package: The library integrates all Product Listing Page features into a single, customizable package.

Core concepts

Beyond choosing an integration path, it's important to understand the features that make Luigi's Box Product Listing powerful.

  • Personalized ranking: Products are ranked based on a feedback loop provided by analytics. This allows for a personalized display of products in listings and respects all merchandising rules you have set up.
  • Pairing: To use product listing, you must provide a mapping between categories and products. The default mapping expects your category object to contain an id attribute and your product object to contain a category_id attribute. If you need to change this default, you must contact support.
  • Hierarchical filtering: When dealing with hierarchical categories, you can use special filters like category_path and all_categories_path. Individual categories in the hierarchy should be separated by a double pipe ||. It is important that the filter value perfectly matches the product value, including letter case.