Here now some details how we use ElasticsearchFeeder on www.blue-tomato.com:
Our main webshop technology is Java / SAP Hybris which is mostly developed by an external developer team. Hybris is good for multichannel webshops but not the best tool for general content management or for creating quick new content. So we use ProcessWire for our editoral content like blogs, landing pages, buyers guides etc. since 2 years. We created a RestAPI where SAP Hybris gets the content from ProcessWire. So ProcessWire prerenders the main-body and gives it with some metadata to Hybris which puts them between the webshop header and footer.
This works great with following page sections:
Since this are kind of static pages it worked very well but we want to integrate also our content dynamicly on other high traffic pages like the homepage or product detail pages. This is why we decided to put our content into ElasticSearch. In front of ElasticSearch we created an GraphQL / Node.js Server, because we mashup our ProcessWire data with product data from other (REST) sources.
For the first step we created two kind of widgets, which run on the Blue Tomato Homepage:
Blue World News (latest news from our blog)
Shop The Look
The Shop The Look Widget is our first try to mix and show data from different sources. The Editor of a "Look" has to create the look in the ProcessWire Admin panel. He uploads the look photo and has to put product IDs into a Table. No product price, title or image. All of the product data will be fetched by GraphQL from our other database during the request. All widgets are rendered with React.
I hope I could give you a short overview of what we do with ProcessWire and ElasticsearchFeeder.