Agility CMS documentationAgility CMS documentation
OverviewEditorsDevelopersOwners & AdminsTraining GuideApps
Sign inLet's Chat
Training
Architecture OverviewData Model Deep DiveContent Modeling StrategyComponent Architecture StrategyPerformance ConsiderationsScaling StrategiesSecurity Best PracticesIntegration PatternsArchitect Training Guide

Architects

Architecture Overview

This guide provides an architectural overview of Agility CMS, focusing on design principles, patterns, and strategic considerations for solution architects.

This guide provides an architectural overview of Agility CMS, focusing on design principles, patterns, and strategic considerations for solution architects.

Headless Architecture

Headless Architecture Diagram

Agility CMS follows a headless architecture pattern that separates content management from content delivery.

Architectural Principles

  1. Separation of Concerns

    • Content management (backend) independent of presentation (frontend)
    • Content APIs provide data, not HTML
    • Frontend applications consume APIs and render content
  2. API-First Design

    • All content exposed via RESTful APIs
    • JSON-based data exchange
    • Stateless API interactions
    • GraphQL support for complex queries
  3. Multi-Channel Support

    • Same content APIs serve multiple frontends
    • Website, mobile apps, IoT devices consume same content
    • Channel-specific presentation logic in frontend
  4. CDN Integration

    • Assets delivered via Content Delivery Network
    • Optimized performance for global audiences
    • Automatic image optimization and resizing

Data Model Architecture

Data Model Diagram

The Agility data model uses a three-layer architecture:

Layer 1: Models (Schema Layer)

Purpose: Define structure and schema

  • Page Models: Define page structure (content zones, layout)
  • Component Models: Define reusable UI component structure
  • Content Models: Define reusable content item structure

Layer 2: Instances (Data Layer)

Purpose: Actual data instances

  • Pages: Page instances created from page models
  • Components: Component instances with actual data
  • Content Items: Standalone content pieces created from content models

Layer 3: Relationships (Reference Layer)

Purpose: Connect entities together

  • Sitemap: Organizes pages and defines URLs
  • Page → Components: Pages contain references to components
  • Component → Content: Components display content items
  • Content → Content: Content items can link to other content items

Interface Organization

Agility Sections Diagram

The Agility CMS interface is organized into four main sections:

  • Content: Manage Lists and Items (reusable content)
  • Assets: Manage Files, Images, and PDFs (media library)
  • Pages: Manage Sitemap, Pages, and Components (page structure)
  • Web Studio: Preview content before publishing

Architectural Benefits

Flexibility

  • Change frontend without affecting content
  • Use any frontend framework or technology
  • Adapt presentation to different channels

Scalability

  • Scale CMS and frontend independently
  • Optimize each layer separately
  • Handle traffic spikes efficiently

Reusability

  • Content and components used across multiple pages/channels
  • Single source of truth for content
  • Consistent content across channels

Performance

  • CDN delivery for assets
  • Optimized caching strategies
  • Fast API responses

Developer Experience

  • Modern APIs and SDKs
  • TypeScript support
  • Comprehensive documentation

Architectural Decision Framework

When to Use Content Models vs Component Fields

Use Content Models When:

  • Content is reused across multiple pages/components
  • Content has relationships with other content
  • Content needs to be managed independently
  • Content supports personalization

Use Component Fields When:

  • Content is specific to one component instance
  • Content is simple (text, image, link)
  • Content doesn't need relationships

When to Use Content Items vs Content Lists

Use Content Items When:

  • Single, standalone piece of content
  • Example: Global Settings, Author profile

Use Content Lists When:

  • Collection of related items
  • Items need to be queried/filtered
  • Example: Blog Posts, Testimonials

Multi-Channel Architecture

Channel Types

  • Website: Traditional web pages
  • Mobile App: Native mobile applications
  • API: Custom integrations
  • Digital Displays: Kiosks, signage

Content Strategy

  • Design content models for reuse
  • Avoid presentation-specific fields
  • Plan for API consumption
  • Support multiple locales

Integration Architecture

Frontend Integration

  • SDKs: Framework-specific SDKs (Next.js, Gatsby, Nuxt, etc.)
  • APIs: RESTful and GraphQL APIs
  • Caching: Built-in caching strategies
  • Preview: Preview mode support

Third-Party Integrations

  • Analytics: PostHog, Google Analytics
  • Search: Algolia, custom search
  • AI: Azure OpenAI, custom AI services
  • CDN: Asset delivery optimization

Performance Architecture

Optimization Strategies

  1. CDN Delivery: Assets via CDN
  2. Image Optimization: Automatic resizing and formats
  3. Caching: Multi-layer caching strategy
  4. Static Generation: Pre-render pages at build time
  5. Incremental Regeneration: Update pages on-demand

Scalability Considerations

  • Horizontal Scaling: Scale frontend independently
  • Content Scaling: Efficient content querying
  • Asset Scaling: CDN for global delivery
  • API Scaling: Optimized API responses

Next: Data Model - Deep dive into the data model

Next →
Data Model Deep Dive
On this page
Headless ArchitectureData Model ArchitectureInterface OrganizationArchitectural BenefitsArchitectural Decision FrameworkMulti-Channel ArchitectureIntegration ArchitecturePerformance Architecture
Agility CMS documentationAgility CMS documentation

Documentation for the CMS built for editors, developers, and AI agents.

Docs
  • Overview
  • Editors
  • Developers
  • Owners & Admins
  • Training Guide
  • Changelog
Resources
  • Get Support
  • MCP Server
  • System Status
  • llms.txt
Agility
  • agilitycms.com
  • Start Free Trial
  • Sign in
  • Blog
© 2026 Agility Inc. All rights reserved.
Privacy PolicyTerms of Service