Rise of headless CMS & modern storefronts
Tags: vue, javascript, webdev, programming
Published: 2021-04-23 08:04:17

I've been using headless CMS for over 4 years now in particular at my company we used [Amplience](https://amplience.com/). Initially, we used it to create a t-shirt customization component for one of the Premier League football clubs and host product images. For another client of ours, we've built a component that was a bed configurator to visually present how the end product - with all the options such as size, material, finish etc selected - will look like. In both cases, the entire frontend was done using Handlebars, JS and CSS that was integrated within our main app (Hybris) and used data that was provided there to fetched assets (SVG and PNG) from Amplience and displayed them on the storefront.

Within time our implementation evolved and become more complex. We still used SAP Hybris CMS to provide products related data (e.g. prices) but now more and more UI components such as carousels, accordions, video components and other reusable components were coming directly from Amplience either as HTML or JSON. For clients UI offered by Amplience was more intuitive and easier to get their heads around than what offered by Hybris.

This is when I realised that this is a direction frontend that will evolve towards to. Within our frontend team, we have decided that all our components should be reusable across different projects but also should remain CMS agnostic.

When I heard that SAP is working on [Spartacus](https://github.com/SAP/spartacus) - a storefront framework based on Angular - I was super excited and couldn't wait to try it out.
In fact, I had the privilege to work on one of the first Spartacus integration for the high street beauty brand. I must admit it was challenging. The new storefront (Spartacus) which is based on a framework (Angular) had a steep learning curve, poor documentation and lack of a wider community around it. All of this didn't make things any easier.

Now looking at how [VueStorefront](https://www.vuestorefront.io/) (VS for short) which is another storefront to integrate with CMS approaches a market let me be optimistic about the future of frontend integrations. The VueStorefront was initially developed by the same company responsible for Spartacus and only recently become an independent company. Lesson learned from working on Spartacus and bringing it into the market must have an impact on how guys decided to introduce VueStorefront to the world.

Guys behind VS built a community around it, involved other System Integrators, joined Mach Alliance and what is most important they opened for other CMS as opposed to focusing purely on single CMS as done by Spartacus team.

Getting started with  VueStroeftont is quite easy. You can spin up your local environment and use [Storyblok](https://docs.vuestorefront.io/storyblok/) which is free alternatively you can use [CommerceTools](https://docs.vuestorefront.io/v2/general/installation.html#using-cli) which has 60 days free trial. 

Reading above you might think I'm somehow related to the companies I just mentioned above. But I'm not. I'm just a passionate frontend developer who aims to provide the best values to clients but most importantly to end users - meaning all of us who use the eCommerce platforms on daily basis.


## Useful resources
- [Spartacus](https://github.com/SAP/spartacus)
- [VueStorefront](https://www.vuestorefront.io/)
- [Nuxt TS](https://typescript.nuxtjs.org/)

P.S.
All we need now is a Storefront based on NextJS :)