Flexo's great for building catalogs. The catalog section of this site demonstrates the basics. This site has responsive front-end design. It should look fine and be functional on everything from small mobile devices to large desktop displays. If you have a trove of information to put online drop us an email.
Flexo uses the ProcessWire infrastructure to gather various assets and and compose content for a page. When Flexo's caching is used, that is what is cached. The quick final assembly to add header and footer is done live, simplifying support for status indications, notices, etc.
The modularity of Flexo/Processwire easily accomodates evolving user interface libraries and CSS frameworks.
The basic building block of the Processwire CMS framework is the Page. It's a clump of data with as many fields as you need and a place in a tree-like hierarchy which may correspond to a URL. Not every Page is used as a web page. Pages can represent anything and many are hidden behind the scenes.
Different types of Pages are handled differently. In practical terms this consists of defining fields and designating a Template File for each type.
When a request for a URL arrives Processwire finds the Page data for that URL and hands it over to the template file. This is where Flexo gets involved.
Flexo supports several relationships between Pages and manages recursive Page discovery and rendering. Developers customize preparation and layout through callback functions.