Agility CMS

Agility CMS Review and Features

Written by Thom Krupa

Last update: 6/11/2024

FeatureAgility CMS

CMS Type

API

Editor Experience

Dashboard Internationalization

The CMS interface can be displayed in multiple languages, making it accessible for non-English speakers.

Multilanguage Content

Support for creating and managing content in multiple languages. Useful for global websites that need to cater to different regions.

Scheduling & Releases

Allows you to schedule content to be published at a specific time and date in the future.

Content Versioning

Keeps track of different versions of content, allowing you to revert to previous versions if needed. Like an "undo" button for your content.

Autosave

Automatically saves changes as you work, preventing data loss if something unexpected happens, like a browser crash.

Preview Content

Lets you see how content will look on your live site before publishing it. Like a sneak peek before it goes live.

Multiple Environments

Support for different stages of content (e.g., development, staging, production). This allows testing changes in a safe environment before going live.

Workflow

Sets up an approval process for content creation. For example, a writer might submit content, then an editor reviews and approves it before publishing.

Customizable UI

Allows customization of the CMS user interface to match your brand or specific needs.

Team Management

User Roles

Predefined roles (like admin, editor, viewer) with specific permissions.

Custom User Roles

Ability to create custom roles with specific permissions tailored to your organization’s needs.

Organization Management

Allows you to manage different user groups and access within the CMS.

Developer Experience

REST API

An API that follows REST principles, allowing developers to interact with the CMS using standard HTTP requests.

GraphQL API

An API that uses GraphQL, allowing clients to request exactly the data they need, making data fetching more efficient.

Images API

API specifically for managing images, including uploading, processing, and retrieving images.
via api (query)

Content Management API

API for managing content, including creating, updating, and deleting content items.

Field Types

Different types of data fields available for content, such as text, number, date, media, etc.

Custom Field Types

Allows you to create even more specific field types beyond the basic ones, to perfectly match the type of content you manage.

Webhooks

Allows the CMS to send real-time notifications to other systems or services when certain events happen (e.g., content published). You can use these to trigger actions in other applications.

CLI

Command Line Interface tools that allow developers to perform tasks and manage the tool via the command line.

SDK

A set of tools and pre-written code snippets that developers can use to integrate the CMS with their project more easily.

Free Tier

Free Plan Available

Some headless CMS providers offer a free plan with limited features, allowing you to try it out before committing.

Team Members

The number of users (team members) that can be added to the CMS.
5

Locales

The number of different languages and regional settings the CMS supports for content creation and management.

Unlimited

Projects

Support for managing multiple projects within the same CMS account.

1

Security & Compliance Offerings

Two-factor authentication

Adds an extra layer of security when logging in.

Team Logs

Tracks user activity within the platform for better accountability.
N/A

GDPR

Compliance with the General Data Protection Regulation for handling personal data.

SOC2

Service Organization Control 2 compliance for managing customer data.

ISO27001

International standard for information security management.

Others

Extensions

Additional plugins or add-ons that can enhance the functionality of the platform.

Built-in Backups & Restore

Features that automatically back up content and settings, allowing easy restoration in case of data loss.

What is Agility?

Agility was born in 2002 in Canada. That makes it one of the oldest CMS in our Discovery Hub. It wasn't headless from the very beginning but eventually turned into one of the biggest Jamstack promoters, organizing a lot of meetups and webinars. You can find great content on their website. They educate people about the modern headless approach to building websites.

User Interface

The UI feels a bit old-fashioned. It reminds me a bit of classy Windows enterprise apps. It's not necessarily a bad thing. I bet some people are so used to this style they don't want to change anything. And that might fit perfectly with Agility's target audience.

Even though the UI looks clunky, it works quite well. You can quickly switch tabs on the left sidebar, from the main dashboard called Home where you can find links to documentation, tutorials, and some basic usage stats. Next are Content and Pages. The latter is a representation of your content in a sitemap kind of structure.

You can organize content in folders. Top pages like home, about, etc can have children which become sub-pages. This should be a very familiar way of structuring content for most editors.

Getting started with Agility

When you sign up Agility welcomes you with a quick starters screen. You can pick Next.js, Gatsby, Nuxt.js, Eleventy, or start with a blank instance that you can customize yourself.

Seamless integration with Next.js and Vercel

I used the default Next.js starter and connected it to Vercel. What surprised me is the great integration between those tools. It took literally 3 clicks. Agility automatically sets up Previews Mode which means you can edit content, click preview and you will see changes in a new tab. That's a great implementation of Next.js Preview feature. Out of the box. That’s kind of the developer experience that makes Jamstack shine.

[@portabletext/react] Unknown block type "video", specify a component for it in the `components.types` prop

It took about 5 minutes to set everything up.

Agility maintains an official gatsby-source-agilitycms plugin that integrates the CMS with the Gatsby GraphQL layer. It’s pretty basic integration, some features like gatsby-plugin-image are not supported yet.

[@portabletext/react] Unknown block type "newPdfPage", specify a component for it in the `components.types` prop

Content Models

Agility offers a pretty advanced field configurator. You can choose from standard text fields to references and custom fields like color picker or video.

Using advanced settings you can set validation rules like a unique field and the same field value for every language.

Reports

In the reports tab, you can find a list of recent changes, items awaiting publication, and user activity. This is a nice place for a supervisor who needs to make sure what’s going on in the CMS space without spending too much time on browsing notifications.

[@portabletext/react] Unknown block type "newPdfPage", specify a component for it in the `components.types` prop

Agility Pricing

Agility comes with a free developer plan for one project. That's enough to test the CMS and play with it, but might be not sufficient for a real website. Larger plans start from $610/month which might be quite pricey for small projects. Agility clearly aims for mid-to-large companies and enterprises. You can find a detailed comparison of plans here.

Agility Support

Standard support starts in the Pro plan, which is currently priced at $1,220/month. There is so-called self-served which basically means all support you get is documentation and maybe a response on live chat, but without guarantee and clear ETA.

[@portabletext/react] Unknown block type "newPdfPage", specify a component for it in the `components.types` prop

Agility Pros and Cons

[@portabletext/react] Unknown block type "prosCons", specify a component for it in the `components.types` prop