Let’s take an example of clothing. In order to build a complete dress, your customers can choose items from different categories step by step. In the first step, they can select shoes from ‘Shoe Category’, in the second step they can select a shirt from ‘Shirts category’, and so on.
Admin can add and configure each step from the backend and assign a category to it. On the frontend, each step appears as a box/container. Six steps mean six boxes will be shown on frontend, and likewise.
By clicking on any box, products from assigned category will be shown and customer will be able to select the desired item. In case of more products, AJAX pagination is used to improve user experience.
Once all the boxes are filled, customer may checkout with the tailored selection.