What are monolithic applications?
CMS frameworks such as Episerver are traditionally known as monolithic applications – what’s a monolith? – in its basic form, a monolith is data storage, back-end code tied in with a front-end views/templates, which then typically gives you a single application – a monolith. These applications, or CMS’s in our case, are often web-first applications, meaning we create them so that all the content will be delivered via HTTP and served up in the form of HTML.
A few years ago it was safe to assume this was fine and all that would ever be required, and it still is in a lot of cases. However, if we want to deliver content through something other than a web app or website, say a smartphone/watch app or even a virtual assistant such as Alexa, then a monolith application/CMS would be incapable (without extensive modification and a world of pain from a developers point of view) to deliver its content through these channels. This is because web-first applications are tightly coupled, meaning that the content or data is very tightly knitted together with the front end presentation, all bundled up together to deliver one application.
So in its simplest form, a standard CMS application gives us 3 things:
- 1. A way of storing content/data
- 2. A user interface to manage content/data
- 3. Various templates/ways to display content/data