Mobile CMS are quite a popular topic these days, but the definition and what to do about it is not always clear. Spend the next 10 minutes with us to learn the ins and out. We will go through various current interpretations of mobile CMS, what technical requirements each of those have, and how those requirements can be met in various ways. By the end, our goal is to make you knowledgeable about the fundamental concepts of a mobile content management system, which are listed below:
Table of Contents
When somebody says “mobile CMS” they could actually have a few different things in mind. This is where the complication arises - there are various interpretations of what a mobile CMS actually is. The following are the 3 most common of those interpretations:
A CMS to manage content in native mobile apps. For example, you have an app for iOS and Android where users are able to purchase cars. You would like a CMS that stores all relevant car information and delivers it to your app on both mobile platforms. This could be seen as a mobile CMS.
A CMS to manage content in mobile responsive websites. Let’s take the previous example and say that, in addition to your iOS and Android apps for selling cars, you also have a website that people visit from various mobile devices, when they don’t want to download the app. Because nowadays there is a multitude of mobile devices with widely varying screen sizes - from smartwatches to tablets - your CMS needs to support content delivery to all of them. At the same time, content presentation on each device needs to seamlessly adapt to each mobile platform and screen size to guarantee the best user experience. A CMS for such mobile responsive websites could also be seen as a mobile CMS.
An application running on a mobile platform that allows a user to manage an existing CMS instance. For example, you have a news website that you built with Wordpress. You would like an application for your Android phone to be able to add new articles and update existing news stories as they develop on the go. This could be seen as a mobile CMS.
Therefore, when talking about mobile CMS, it is paramount to make sure that everybody is actually talking about the same concept.
If you would like to create content that would then be delivered to a mobile application on a mobile platform, whether phone, tablet, smartwatch, or other, you have a few ways of accomplishing that.
The app as a mobile CMS
In some ways, you could use the application itself as a CMS of sort. In other words, the content that you need in the application could be hardcoded in the application itself. This makes it a really straightforward option of having content in your app.
Except for extremely minimal and static apps, however, there are significant drawbacks to this approach. The following should be top of mind, if that’s the approach you would like to take:
For any meaningful dynamic app the size of the app has the potential to be quite large, since storing all content locally takes up space. In addition, running such an app on a mobile device will likely consume a significant portion of the device’s processing power. The resulting user experience will likely suffer with the app being branded “slow” and “unresponsive”;
Any content changes will lengthen delivery cycles and, therefore, affect your roadmap. Since every content change will be considered a change to the app, every new version will have to be resubmitted to the respective mobile app store and be subject to the review and approval process every time;
Speaking of app stores, if you plan on having your app on multiple mobile platforms simultaneously, you will need to update all apps manually at the same time and continuously make sure they’re in sync. If you would later like to add another platform, such as an Internet connected fridge, for example, your administrative effort would increase yet again.
While certainly a possibility, realistically speaking, for any meaningful mobile app experience, using the app itself as a CMS is most likely not the best option given the drawbacks.
Mobile Backend-as-a-Service Offerings (mBaaS) as a mobile CMS
As an alternative to hard coding your content within your mobile application, you could utilize a mobile Backend-as-a-Service product for your mobile CMS needs. There are a few alternatives you could consider, depending on what you are after:
If you are coming more from a big company or enterprise context, Kinvey might be for you;
If you would rather rely on the expertise of global tech companies, Firebase, which is owned by Google, offers all the core functionality of a mobile Backend-as-a-Service.
While an mBaaS is a great alternative to hard coding content within the mobile application itself - it also does a good job for simple non content heavy applications, where the content is mostly static - the key functionality lacking with an mBaaS is the actual CMS. Therefore, for mobile applications that need content updated frequently or where there is a need for proper editorial workflows, especially involving non-technical users, a mobile Backend-as-a-Service is likely not the best solution.
A true mobile CMS
Having reviewed alternatives, let’s dive into the details of what it would mean to have a true mobile CMS powering the content in your mobile applications.
As we can synthesize from the previous discussion, a true mobile CMS absolutely must meet the following requirements:
First of all, it needs to be a CMS in the sense that it supports editorial workflows, especially for non-technical users;
It needs to support dynamic content that is changing frequently without delays to the release cycle;
It needs to easily publish content to multiple mobile platforms, including ones that may not even exist yet.
To address these requirements, the concept of a headless content management system was developed. A headless CMS is defined by the following characteristics:
A headless CMS is API-first. This means that, unlike legacy content management systems, such as Drupal, Wordpress, Acquia, Episerver, Magnolia, Sitecore or Adobe Experience Manager, where the API can be added via third party plugins or was added at a much later stage of development, such headless CMS were built from the ground up with the API at their heart. This can either be a legacy REST API or GraphQL API;
A headless CMS separates content from presentation. Giving the right tools to the right people is another differentiating factor of a headless CMS, whereby developers match the right presentation of content to the right platform by utilizing the API, while content creators produce and manage content with the tools they’re used to;
A headless CMS is natively multi-platform. Because a headless CMS provides content via an API and doesn’t dictate how content needs to be presented, such a content management system by nature supports all platforms. Today that is mobile or smartwatch, or virtual reality, augmented reality, IoT, or another new platform tomorrow;
A headless CMS guarantees stability, API performance, and security. Though there are self-hosted options of headless CMS, it is prefered to rely on somebody else’s expertise and full-time dedication to manage the critical aspects of system stability, API performance, and security because ultimately the API just needs to work, so that developers can focus on building engaging mobile applications, instead of doing devops work.
There are a number of attractive options for such headless content management systems.
First, you may choose the familiar legacy systems such as Drupal, Wordpress, Acquia, Episerver, Magnolia, Sitecore or Adobe Experience Manager and either incorporate a third-party API plugin or work with the existing API.
Second, you may choose a newer generation API-first headless CMS with a legacy REST API, of which there is also a multitude of options, such as Contentful, Prismic, CraftCMS, CosmicJS, or Built.io, among many others.
Finally, you may choose GraphCMS - the first headless CMS to provide a GraphQL API. In addition to the upsides of being a headless CMS, GraphCMS provides the following benefits:
Minimal footprint in the mobile application. As an alternative to REST APIs and combined with advanced filters, a GraphCMS GraphQL API response has minimal size and presents a JSON response exactly in the shape of the request itself getting rid of the need to reformat or aggregate data once it reaches the mobile app. This ensures the mobile application is as performant on any mobile device as possible;
Native support for poor connectivity environments. The GraphCMS API eliminates the need for multiple roundtrips to the API to fetch all required data, thus saving bandwidth and supporting bad connectivity and low data transfer scenarios inherent in mobile platforms;
Auto-generated API documentation. Thanks to the power of GraphQL, the GraphCMS API auto-generates documentation of itself making onboarding of new developers very easy;
An intuitive web application for content creation. The GraphCMS web application for creating and managing content is inspired by the best in design and user interaction research. This makes for intuitive and efficient ways to produce and edit content.
Of the three CMS for mobile options presented - using the mobile app itself as the CMS, utilizing a mobile Backend-as-a-Service, or finding a mobile CMS - we suggest you find a headless content management system that is right for you. There is a multitude of great options!
Mobile applications are certainly the dominating mode of consuming content on mobile platforms, with some estimates showing as much as 80-90% of the time spent on mobile devices taking place in mobile apps. There is still room for mobile websites, however, and it would be a mistake to neglect them.
The challenge with mobile responsive websites is in the fact that between Apple’s iOS and Google’s Android mobile operating systems, not to mention various smartwatches and other smart devices with a screen, there is a multitude of devices and screen sizes. Choosing to build a mobile responsive website means that you have to deliver a consistently smooth user experience across all of these screens, regardless of how different their sizes and proportions may be. Sounds daunting!
The good news is that, more often than not, a mobile responsive website is a counterpart to an already existing desktop website. This presents a few options of how to manage content in this case.
If the existing desktop website is already powered by a content management system, especially if it is a legacy CMS, such as Drupal, Wordpress, Acquia, Episerver, Magnolia, Sitecore or Adobe Experience Manager, you may choose to utilize existing themes and plugins to simply make your desktop website responsive. For Wordpress you may opt for the default responsive theme, which has been installed more than 1 million times as of this writing. If you’re a Drupal user, take a look at the responsive plugins here. For other content management system providers you may rely on the expertise of your design and development teams to make your existing website responsive.
If, on the other hand, you are building both the desktop website and the mobile responsive website from scratch, it is a great opportunity to consider the benefits of a content management system for mobile, as outlined above. Specifically, a headless CMS will be beneficial here because you would have the opportunity to deliver the same content through the same API to two different platforms. In other words, you or your content creators would produce the content once and the CMS would distribute it to any platform with ease. In this case, it would be a desktop website and a mobile responsive website. It could also be a mobile app and virtual reality headset in the future, however!
In cases when you would like a mobile CMS in the sense of an application for your mobile device to administer your existing CMS instance, you have a few options. If you already have a legacy CMS in place, such as Wordpress or Drupal, you could use the mobile app that Wordpress provides for your CMS on-the-go needs. You can dive in here. For Drupal, a third party iPad application is also available here. Unfortunately, it is currently only available in the US app store. In case you’re coming from the enterprise world and already have a Magnolia CMS running, you can use their iPad app.
Alternatively, for really simple use cases, such as personal or corporate blogs, you could look to modern publishing platforms, such as Medium or Tumblr. Both of these are a great way to create simple content and offer mobile apps to do so on-the-go.
Hopefully, you are now well versed in the fundamentals of content management systems for mobile - the various interpretations of the term, the various technical requirements of each, and several options from which to choose one that fits your own use case. Finally, if you determine that you need a CMS for mobile applications or mobile responsive websites, give GraphCMS a try. You can start a free trial with all premium features enabled, such as webhooks, content localization, and more. Once the time is right, we will work with you to find a paid plan that fits your needs. If, on the other hand, you are working on a personal project, you can always use GraphCMS with our forever free Free plan.