Our company uses MODX as a cms (www.abi.nl).
We would like to extend the site with a catalogue / search / selection tool.
Different selection options which narrows down to a specific type with the ability to download files.
If you’re just looking to setup a static catalog, without checkout and ecommerce functionality, then you could set your products up as resources and collections using the collections extra. For cross filtering, like the example site you included, you could use the advsearch extra accomplish that.
(Please note most of the documentation for creating your own search hooks is located in the actual assets folder for advsearch rather than online.)
Please bare in mind though that you may also want to look at extending the resource object to include your additional product fields for a better search performance. Whilst these could be setup as template variables it wouldn’t be as optimised as if they were actual fields within the resource object. For this I point you to @bobray’s class extender extra and documentation: https://bobsguides.com/classextender-class.html
For downloads relating to the product/resource you could use FileDownloadR extra or if they are just PDF spec sheets as per the example you could also look into using pdfResource extra to automatically create the PDF documents for you based off of the resource data.
How many products does your company have? The example site you gave seemed to have hundreds or thousands. At quick glance it appeared your website had fewer than a hundred. If that’s the case, I would recommend a jQuery solution similar to something like this (notice the predefined filter). Put the load on the user, not your server. Use MODX to list all of the resources as @lkfranklin mentioned, generate the PDFs, and so on. Then use jQuery to filter out the users query. This solution would not be ideal for overly complicated listings, or lists over ~250.
Are you planning on making a massive listing of ~3,500 different products, or a list of ~30 products, with a variety of functionality?
3500 products * 30 variables each = lots of work, just saying.
If a customer comes to your site and goes to your filter and selects the “Drives Category” and then the selects a range of “speed”, and makes a “power” selection, why have 75 products show up, when you could show 2 that have the functionality that the customer is looking for? Seems excessive to me.
If the massive list is your plan, I would think it might be easier and more efficient to use Ajax calls made to a PHP file that uses the MODX API to query the database and passes the results back via JSON.