For a recent e-commerce project, I imported products and categories into Elasticsearch, to utilize the fantastic search capabilities that Elasticsearch provides. For those that don't know: Elasticsearch is kind of a NoSQL database, but it has grown into much more than that. The elastic stack offers storage, analysis and search for all your data. As someone described it in a promo-video: running Elasticsearch is a bit like running your own Google.
For the mentioned project, I ended up making a headless CMS on top of Elasticsearch that consists of two "layers". A backend layer that was built in Go and a frontend layer that was built with Vue.js. The backend layer serves as a layer between the frontend and Elastic, and is used to authorize requests, keep track of collection meta-data and deal with media like images and videos. The frontend can be used to define collections. For now this is done in JSON format, but a WYSIWYG editor to visually create collections is planned. After collections are defined, items can be added, sorted, filtered and translated, with the Vue.js frontend.
Since I made a good start with the project, I feel like sharing it or even turning it into (open source) SaaS. Before I dive in, optimize the code, add some features and publish the project, I'd like to ask your opinion. Would you find a tool like this helpful at all? What should a headless CMS on top of Elasticsearch be capable of, for you to use it? Do you think this could have a future as SaaS, even if the project will be open source?
An independent layer on top of Elasticsearch. You can still use the native Elasticsearch API and tools like Kibana and Beats.
Define collections and what fields their items should consist of. E.g. a product that consists of a name, sku, price and image.

Provide an api for public, semi-public and admin collections, while keeping the native elasticsearch query format.
Items can have relations to items from another collection. E.g. a product can contain one or multiple categories/tags and vice-versa.
Define which items should be public/active and which fields should be public. E.g. a product can be public, but the supplier field can be private.
Support for Cloudinary built in. Keep track of images' meta data, while hosting them wherever you want.
Support for FusionAuth built in. Authorize with a JWT token from an identity provider.
Planned: automatically resolve relations for public, semi-public and admin api
Planned: WYSIWYG editor for collections
for replying. Your opinion is greatly appreciated!
Go find similar customers to your ecomm client and see if they have that problem. Linkedin seems to be the go to. Cold email can also work.
Thank you for your reply. LinkedIn and cold email could definitely work to gather clients. That would partly answer the economic question I'm currently facing.
What I would also like to measure, is how likely it is that developers would join in to help develop a product like this, if it were to be open source. To do this, I made a copy of this post today, on Dev.to (https://dev.to/ruudniew/headlesstic-a-headless-cms-on-top-of-elasticsearch-1-what-do-you-think-41c1). Perhaps I messed up the title, but it's hard to stand out in the many articles that appear there every hour. Any ideas to measure what I want to measure, would be very valuable!
Hacker news might be a better place to start, but you would want a guthub repo and something people can test before.
I think open source takes even more work than closed source in the short term. But it is a good marketing strategy.
Hi Ruud,
I like the idea of using the same storage for content, products, and search. Enterprises who need the 3 can end up in complex integration projects.
I think that the headless CMS market is a bit crowded: Contentful, Prismic, Contentstack, Kontent, Strapi, Sanity are quite good products, and it can take a while to implement again things like publication, real time saving, versioning, collaborative editing and multiple languages..
Instead, I'd focus on the contents + products + search problem. It could be nice thing to provide working code and feedback on how to index from headless CMS and ecommerce/PIM like strapi + akeneo (or contentful + commercetools or magento + Sanity .. ) and provide federated search with Elasticsearch.
Then, I think, I'd start with consulting on top of such skills and get more feedback from real life customers.
That said, that's just me :)
I forgot one question: Why didn't you use one of the headless CMS already available? Did you have requirements that couldn't be matched or price concerns?
I am not so sure about the current name.
It's not a final name, so I'm open for suggestions. What about "Helastik"?