In the later days of Drupal 7, the software known as CMS (content management system) has slowly started to transition away from being purely a CMS software into something we could categorise as CMF (content management framework).
Now with about 1 and a half year into a stable version of Drupal 8, more features are being added to core, more and more contributed modules have been made and made stable, with the vast amount of components provided with core, I can no longer speak of Drupal as a CMS but only as a CMF.
This, of course, does depend on the way you utilise the components you are given.
Myself and the team were recently given a project to create an API service that would connect the client's website with several 3rd party integrations such as CRM systems etc.
Of course with the REST API included in Drupal's core (and the fact that we are a Drupal studio) we immediately thought about using Drupal 8 for this. And after a couple of proof of concepts, we liked the idea more and more.
In this session, I would like to present ways with code examples to utilise various components from Drupal 8 such as entities, services, dependency injection, configuration and of course REST API components. I will describe why and how we used these components, complications that you might encounter and best practices based on our experience.