React app with AEM Headless View the source code on GitHub A full step by step tutorial describing how this React app was build. e. Below is a summary of how the Next. This class provides methods to call AEM GraphQL APIs. Integrate requests for persisted queries into the sample WKND GraphQL React app using the AEM Headless JavaScript SDK. Persisted queries. Open the Program containing the AEM as a Cloud Service environment to integrate set up the Service Credentials for. Headless AEM is a Adobe Experience Manager setup in which the frontend is decoupled from the backend. Additional Resources. Headless architecture defined. Component mapping enables users to make dynamic updates to SPA components within the AEM SPA Editor, similar to traditional AEM authoring. AEM Headless GraphQL Video Series. This setup establishes a reusable communication channel between your React app and AEM. AEM Headless tutorials - If you prefer to learn by doing and have existing knowledge of AEM, take our hands-on tutorials organized by API and framework, that explore creating and using applications built on AEM Headless. Jamstack is an architectural approach that decouples the web experience layer from data and business logic, improving flexibility, scalability, performance, and maintainability. It houses its repository on GitHub. Umbraco CMS is open source and available for free download. AEM Headless supports a offset/limit and cursor-based pagination queries to smaller subsets of a larger result set. AEM Headless single-page app (SPA) deployments involve JavaScript-based applications built using frameworks such as React or Vue, that consume and interact with content in AEM in a headless manner. Example applications are a great way to explore the headless capabilities of Adobe Experience Manager (AEM). In this part of the AEM Headless Developer Journey, learn how to deploy a headless application live by taking your local code in Git and moving it to Cloud Manager Git for the CI/CD pipeline. Headless AEM is a Adobe Experience Manager setup in which the frontend is decoupled from the backend. Watch Adobe’s story. Wrap the React app with an initialized ModelManager, and render the React app. Get started building your Photoshop plugin with the UXP Plugin API. GraphQL Model type ModelResult: object . react project directory. Enhanced Personalization and Customer Journey MappingAdobe Experience Manager Sites pricing and packaging. js app uses AEM GraphQL persisted queries to query adventure data. Example applications are a great way to explore the headless capabilities of Adobe Experience Manager (AEM). The sites and web applications built using Umbraco are responsive and thus adjusts accordingly on desktops as well as smart phones. Following AEM Headless best practices, the Next. content project is set to merge nodes, rather than update. Following AEM Headless best practices, the Next. Adobe Experience Manager Sites is the industry-leading content management system that empowers any marketer or developer to create high-performance pages across any digital property — from web to mobile to apps. Wrap the React app with an initialized ModelManager, and render the React app. The tutorial is designed to work with AEM as a Cloud Service and is composed of two projects: The AEM Project contains configuration and content that must be deployed to AEM. as JSON consumed by JavaScript (AEM SPA Editor) or a Mobile App is a function of the how that. The HTTP GET requests from the headless app to AEM’s GraphQL APIs must be configured to interact with the correct AEM service, as described in the. Next, create a new file in the react-app folder, and name it clientlib. The full code can be found on GitHub. For this exercise, create a full query that the AEM headless app uses. This server-to-server application demonstrates how to query content using AEM’s GraphQL APIs using persisted queries and print it on terminal. The sample React app has three main parts: The src/api folder contains files used to make GraphQL queries to AEM. AEM provides a Translation Integration Framework for headless content, allowing Content Fragments and supporting assets to be easily translated for use across locales. View the source code on GitHub A full step-by-step tutorial describing how this React app was build is available. The full code can be found on GitHub. Looking for a hands-on. AEM as a Cloud Service and AEM 6. This cheat sheet uses a sample Maven project to demonstrate some useful Maven commands. ; Create Content Fragment Models ; Create Content Fragments ; Query content. Formerly referred to as the Uberjar; Javadoc Jar - The. In this tutorial, we’ll take a look at how we can export content fragments from AEM to Adobe Target in order to personalize headless experiences. The following are required to follow this quick setup: AEM as a Cloud Service Sandbox environment (preferably Development) From these takeaways we can recommend AEM headless or hybrid to be considered when the following points are met: You aim to deliver the same experience and code base for a content-focused page on the web and a hybrid mobile app. js implements custom React hooks. To accelerate the tutorial a starter React JS app is provided. AEM Headless as a Cloud Service. Courses Recommended courses Tutorials Certification Events Instructor-led training Browse content library View all learning options. Advanced concepts of AEM Headless overview. An end-to-end tutorial illustrating how to build-out and expose content using AEM Headless. Content Fragments are editorial content, with definition and structure, but without additional visual design and/or layout. The site can be found here. Therefore, everything runs faster, and the tests interact with the page directly, eliminating any chances of instability. Authorized requests to AEM GraphQL APIs they typically occur in the context of server-to-server apps, since other app types, such as single-page apps, mobile, or Web Components, typically do use authorization as it is difficult to secure the credentials . js app is built, how it connects to AEM Headless to retrieve content using GraphQL persisted queries, and how that data is presented. The AEM Headless quick setup gets you hands-on with AEM Headless using content from the WKND Site sample project, and a sample React App (a SPA) that. json file. Authorized requests to AEM GraphQL APIs they typically occur in the context of server-to-server apps, since other app types, such as single-page apps, mobile, or Web Components, typically do use authorization as it is difficult to secure the credentials . Then everyone started using cellphones, and mobile apps became another way to expose content to end users. js. Faster, more engaging websites. Developer. This is the same framework used to translate other AEM content, such as Pages, Experience Fragments, Assets, and Forms. A majority of the SPA development and testing is. Example applications are a great way to explore the headless capabilities of Adobe Experience Manager (AEM). js app is built, how it connects to AEM Headless to retrieve content using GraphQL persisted queries, and how that data is presented. Client type. org. You are now ready to move on to the next tutorial chapter, where you will learn how to create an AEM Headless React application that consumes the Content Fragments and GraphQL endpoint you created in this chapter. This multi-part tutorial walks through the implementation of a React application for a fictitious lifestyle brand, the WKND. AEM Headless as a Cloud Service. How to create headless content in AEM. js app is built, how it connects to AEM Headless to retrieve content using GraphQL persisted queries, and how that data is presented. Abstract. Adobe Experience Manager Sites headless CMS trial Explore the potential of headless CMS. AEM Headless GraphQL Video Series. You should continue your AEM headless journey by next reviewing the document How to Put It All Together - Your App and Your Content in AEM Headless where you will get familiar with the AEM architecture basics and tools you need to use to put your application together. The React App in this repository is used as part of the tutorial. AEM Headless single-page app (SPA) deployments involve JavaScript-based applications built using frameworks such as React or Vue, that consume and interact with content in AEM in a headless manner. In a regular headful Chrome instance, we can then use Chrome DevTools remote debugging to connect to the Headless target and inspect it. js initializes and exports the AEM Headless Client used to communicate with AEM; src/api/usePersistedQueries. We’ll be using the sample Weekend React app that is an AEM headless app, so the majority of the content on this app is powered by content fragments over AEM’s GraphQL APIs. Learn about AEM’s GraphQL capabilities through the in-depth walk-through of Content Fragments and and AEM’s GraphQL APIs and development tools. Each environment contains different personas and with different needs. This tutorial explores how AEM Content Services can be used to power the experience of an Mobile App that displays Event information (music, performance, art, etc. Explore the web client. The following are required to follow this quick setup: AEM as a Cloud Service Sandbox environment. This is needed because in AEM a component (Angular 2) can be used many time and that too outside of root component's scope. Navigate to Tools > General > Content Fragment Models. This example, loosely based on the AEM Headless React app, illustrates how AEM GraphQL API requests can be configured to connect to different AEM Services based on environment variables. With Headless Adaptive Forms, you can streamline the process of. A “Hello World” Text component displays, as this was automatically added when generating the project from the AEM Project archetype. ” Tutorial - Getting Started with AEM Headless and GraphQL. js app. Tap on the download button in the top-left corner to download the JSON file containing accessToken value, and save the JSON file to a safe location on your development machine. The AEM Headless Client for JavaScript is used to execute the GraphQL persisted queries that power the app. This example, loosely based on the AEM Headless React app, illustrates how AEM GraphQL API requests can be configured to connect to different AEM Services based on environment variables. Level 2: In addition to level one: The RemotePage component can be used to embed the external SPA into AEM where AEM content can be viewed in-context. With Headless Adaptive Forms, you can streamline the process of. js app uses AEM GraphQL persisted queries to query adventure data. Level 2: In addition to level one: The RemotePage component can be used to embed the external SPA into AEM where AEM content can be viewed in-context. Sign In. Persisted queries. To determine the correct approach for managing build dependent configurations, reference the AEM Headless app’s framework (for example, React, iOS, Android™, and so on) documentation, as the approach varies by framework. Persisted queries. or a Mobile app, controls how the content is displayed to the user. Contribute to lamontacrook/aem-headless-portal development by creating an account on GitHub. From the Blog. Below is a summary of how the Next. The minimal set of dependencies for the React app to use AEM React Editable Components v2 are: @adobe/aem-react-editable-components, @adobe/aem-spa-component-mapping, and @adobe/aem-spa-page-model-manager. This React application demonstrates how to query content using AEM’s GraphQL APIs using persisted queries. Persisted queries. I was going thru Adobe blogs and feel just the vice versa of this topic is achievable i. The models available depend on the Cloud Configuration you defined for the assets. A classic Hello World message. This server-to-server application demonstrates how to query content using AEM’s GraphQL APIs using persisted queries and print it on terminal. Integrate AEM & CIF framework to build a rich and immersive e-commerce experience; Build websites faster with AEM Headless and App Builder; Adobe Experience Manager as a Cloud Service: 2021 review and 2022 outlook; 2020. I have an external React component library of ~70 React components, which feeds a web frontend (Websphere Commerce site, which pulls in Experience Fragments via AJAX calls to get the fragment HTML), and also a React Native app. If a component is outside of root component's scope Angular 2. AEM Headless as a Cloud Service. View the source code on GitHub. A majority of the SPA development and testing is. This server-to-server application demonstrates how to query content using AEM’s GraphQL APIs using persisted queries and print it on terminal. How to organize and AEM Headless project. The full code can be found on GitHub. Controleren de documentatie voor stapsgewijze instructies voor het maken van een Adobe IMS. Wrap the React app with an initialized ModelManager, and render the React app. View the source code on GitHub. To do so, go to chrome://inspect, click the Configure… button, and enter the IP address and port number from the WebSocket URL. The React app should contain one instance of the <Page> component exported from @adobe/aem-react-editable-components. 3 - Explore the AEM GraphQL API; 4 - Persisted GraphQL Queries; 5 - Client Application Integration; Headless First Tutorial. 5. Infogain is a human-centered digital platform and software engineering company based out of Silicon Valley. This Android application demonstrates how to query content using the GraphQL APIs of AEM. Assets HTTP API; Content Fragments REST. Before calling any method initialize the instance with GraphQL endpoint, GraphQL serviceURL and auth if needed Typedefs Model: object . Additional resources can be found on the AEM Headless Developer Portal. This Web Component/JS application demonstrates how to query content using AEM's GraphQL APIs using persisted queries. Select Edit from the mode-selector in the top right of the Page Editor. js app uses AEM GraphQL persisted queries to query adventure data. The AEM Headless quick setup gets you hands-on with AEM Headless using content from the WKND Site sample project, and a sample React App (a SPA) that consumes the content over AEM Headless GraphQL APIs. Front end developer has full control over the app. Headless architecture represents a specific type of decoupled user interface that is untethered from underlying, back-end business and application logic. Directly exposing Content Fragment content (all variations) as JSON via direct calls to AEM Assets via the AEM Assets HTTP. Open the Program containing the AEM as a Cloud Service environment to integrate set up the Service Credentials for. The configured AEM service’s host/domain is then used to construct the AEM GraphQL API URLs and Image URLs. apps and ui. Host the SPAPopulates the React Edible components with AEM’s content. The AEM Headless SDK is available for various platforms: AEM Headless SDK for client-side browsers (JavaScript) AEM Headless SDK for server-side/Node. Learn how to extend an existing Core Component to be used with the AEM SPA Editor. The following video provides a high-level overview of the concepts that are covered in this tutorial. Below is a summary of how the Next. from AEM headless to another framework like react. Learn about Headless in Adobe Experience Manager (AEM) with a combination of detailed documentation and headless journeys. Permission considerations for headless content. Deploying a SPA that interacts AEM in a headless manner involves hosting the SPA and making it accessible via a web browser. Populates the React Edible components with AEM’s content. The following are examples of possible approaches for constructing URLs for AEM GraphQL API and image requests, for several popular headless frameworks and platforms. The Story So Far. AEM Headless as a Cloud Service. AEM Headless Overview; GraphQL. The full code can be found on GitHub. This tutorial walks through the implementation of a Angular application for a fictitious lifestyle brand, the WKND. Production Pipelines: Product functional. Tap in the Integrations tab. Following AEM Headless best practices, the Next. js. Next. Editable React components can be “fixed”, or hard-coded into the SPA’s views. Een configuratie van Adobe IMS die de authentificatie tussen AEM en Adobe Target vergemakkelijkt. The AEM Headless Client for Java is used to execute the GraphQL queries and map data to Java objects to power the app. The use of the StepButton here demonstrates clickable step labels, as well as setting the completed. Headless content management is a key development for today’s web design that decouples the frontend, client-side applications from the backend, content management system. Progressive web apps. Anatomy of the React app. apps/pom. When authorizing requests to AEM as a Cloud Service, use. Let’s create some Content Fragment Models for the WKND app. Client type. Create and manage engaging content at scale with ease. This React application demonstrates. ) to render content from AEM Headless. 5. Angular), mobile apps or even IoT devices, using REST or GraphQL. js app. The source code does not need to be built or modified for this tutorial, it is provided to allow for fully. This term is rather used for heavy weight clients. js (JavaScript) AEM Headless SDK for Java™. Best for: Creating content and displaying it in any form you choose. Example applications are a great way to explore the headless capabilities of Adobe Experience Manager (AEM). js Web Component iOS Android Node. js app. Experience League. The ImageComponent component is only visible in the webpack dev server. Persisted queries. Bundled apps or components can be installed, started, paused, updated, and uninstalled without needing a reboot. With headless browser testing, you will perform end-to-end tests where the browser will not load the application’s user interface. Authorization. AEM Pure Headless Demo Overview . Learn how AEM can go beyond a pure headless use case, with. In this context, extending AEM as a Cloud Service, an overlay means to take the predefined. Sign In. AEM's headless CMS features allow you to employ many. js initializes and exports the AEM Headless Client used to communicate with AEM; src/api/usePersistedQueries. is now hiring a AEM Developer in Austin, TX. Chapter 1 of the AEM Headless tutorial the baseline setup for the AEM instance for the tutorial. It is the main tool that you must develop and test your headless application before going live. frontend module is a webpack project that contains all of the SPA source code. AEM Headless as a Cloud Service. The AEM Headless Client for JavaScript is used to execute the GraphQL persisted queries that power the app. Populates the React Edible components with AEM’s content. The React app should contain one instance of the <Page. The full code can be found on GitHub. Update Policies in AEM. Developer. Persisted queries. Sign In. Persisted queries. From the command line navigate into the aem-guides-wknd-spa. First select which model you wish to use to create your content fragment and tap or click Next. Get ready for Adobe Summit. Example applications are a great way to explore the headless capabilities of Adobe Experience Manager (AEM). supports headless CMS scenarios where external client applications render experiences using content managed in AEM. Certain points on the SPA can also be enabled to allow limited editing. Explore AEM’s GraphQL capabilities by building. It was originally written for OpenJDK 13. Example applications are a great way to explore the headless capabilities of Adobe Experience Manager (AEM). The srcset and sources use a custom setParams function to append the web-optimized delivery query parameter to the _dynamicUrl of the. Persisted queries. e. Learn how easy it is to build exceptional experiences using headless capabilities with this guided, hands-on trial of Adobe Experience Manager Sites CMS. 0. e. Following AEM Headless best practices, the iOS application uses AEM GraphQL persisted queries to query adventure data. AEM Headless single-page app (SPA) deployments involve JavaScript-based applications built using frameworks such as React or Vue, that consume and interact with content in AEM in a headless manner. When authorizing requests to AEM as a Cloud Service, use. We look forward to seeing you at the 2024 AEM Annual Conference November 13-15, 2024 in Indian Wells, CA. An end-to-end tutorial illustrating how to build-out and expose content using AEM's GraphQL APIs and consumed by an external app, in a headless CMS scenario. AEM Headless single-page app (SPA) deployments involve JavaScript-based applications built using frameworks such as React or Vue, that consume and interact with content in AEM in a headless manner. The AEM Headless quick setup gets you hands-on with AEM Headless using content from the WKND Site sample project, and a sample React App (a SPA) that consumes the content over AEM Headless GraphQL APIs. Tap Home and select Edit from the top action bar. Tutorials by framework. ; Consume Content Fragment from headless apps using AEM Headless GraphQL APIs. Wrap the React app with an initialized ModelManager, and render the React app. Dynamic Component Loader class: DynamicNg2Loader class that will load Angular 2 components dynamically at runtime outside of the root component. 0 versions. AEM GraphQL API requests. Maven is one of the most popular project and dependency management tools for Java applications. AEM Headless client deployments take many forms; AEM-hosted SPA, external SPA, web site, mobile app, or even server-to-server process. The full code can be found on GitHub. Typically, an AEM Headless app interacts with a single AEM service for both GraphQL API and image requests. Chapter 4 of the AEM Headless tutorial covers the role of AEM Editable Templates in the context of AEM Content Services. Front end developer has full control over the app. Below is a summary of how the Next. React apps should use the AEM Headless Client for JavaScript to interact with AEM’s GraphQL APIs. js app uses AEM GraphQL persisted queries to query adventure data. Learn how easy it is to build exceptional experiences using. 6. AEM Headless as a Cloud Service. Watch overview Explore the power of a headless CMS with a free, hands-on trial. The full code can be found on GitHub. The AEM SDK. 5 ready for the world - translation integration & best practices; 2019. With Adobe Experience Manager (AEM), you can selectively access your Content Fragments, using the AEM GraphQL API, to return only the content that you need. Persisted queries. Example applications are a great way to explore the headless capabilities of Adobe Experience Manager (AEM). Adobe first introduced its headless capabilities in Adobe Experience Manager at the Adobe Developers Live conference for digital experience developers in 2021 and customers have been able to leverage GraphQL and other API connectivity ever. With a headless implementation, there are several areas of security and permissions that should be addressed. This simple React app uses the AEM Headless SDK to query AEM Headless APIs for an Adventure content, and displays the web-optimized image using img element with srcset and picture element. A powerful core package for personalization across channels with add-ons that let you customize to exactly what you need. Integreer personalisatie in een React-gebaseerde AEM Headless-app het gebruiken van het Web SDK van de Adobe. Using a REST API introduce challenges: This example, loosely based on the AEM Headless React app, illustrates how AEM GraphQL API requests can be configured to connect to different AEM Services based on environment variables. The following tools should be installed locally: JDK 11;. Example applications are a great way to explore the headless capabilities of Adobe Experience Manager (AEM). ARC XPRich text with AEM Headless. View the source code on GitHub. Introduction. Tap Home and select Edit from the top action bar. Example applications are a great way to explore the headless capabilities of Adobe Experience Manager (AEM). js application demonstrates how to query content using AEM’s GraphQL APIs using persisted queries. Explore AEM’s GraphQL capabilities by building. Ensure that the React app is running on Node. Below is a summary of how the iOS application is built, how it connects to AEM Headless to retrieve content using GraphQL persisted queries, and how that data is presented. It runs independently outside of AEM and can be shared and customized. config. This means you can realize headless delivery of structured. Learn about the various deployment considerations for AEM Headless apps. js implements custom React hooks. 1:60926. With Adobe Experience Manager (AEM) as a Cloud Service, Content Fragments lets you design, create, curate, and publish page-independent content. Objective. Understanding how to add properties and content to an existing component is a powerful technique to expand the capabilities of an AEM SPA Editor implementation. AEM Headless Translation Journey - This documentation journey gives you a broad understanding of headless. Following AEM Headless best practices, the Next. Certain points on the SPA can also be enabled to allow limited editing. Below is a summary of how the Next. A modern content delivery API is key for efficiency and performance of Javascript-based frontend applications. Next. ) that is curated by the. Get to know how to organize your headless content and how AEM’s translation tools work. Below is a summary of how the iOS application is built, how it connects to AEM Headless to retrieve content using GraphQL persisted queries, and how that data is presented. The sample React app has three main parts: The src/api folder contains files used to make GraphQL queries to AEM. Below is a summary of how the Next. Anatomy of the React app. The build will take around a minute and should end with the following message:Navigate to the folder you created previously. This setup establishes a reusable communication channel between your React app and AEM. Ensure you adjust them to align to the requirements of your. Deliver content to various channels and platforms, including websites, mobile apps, IoT devices, chatbots, and more. Tap the Local token tab. Populates the React Edible components with AEM’s content. With Spryker's MVP approach we quickly launched into African and Asian markets. Magnolia CMS provides the best blend of enterprise power and agility while giving you freedom over your DX stack. You can create your websites or mobile applications using any programming language,. Level 2: In addition to level one: The RemotePage component can be used to embed the external SPA into AEM where AEM content can be viewed in-context. The <Page> component has logic to dynamically create React components. API Reference. The AEM Headless SDK is set of libraries that can be used by clients to quickly and easily interact with AEM Headless APIs over HTTP. I was going thru Adobe blogs and feel just the vice versa of this topic is achievable i. Below is a summary of how the Next. View the source code on GitHub. js app is built, how it connects to AEM Headless to retrieve content using GraphQL persisted queries, and how that data is presented. js app uses AEM GraphQL persisted queries to query adventure data. The multi-line text field is a data type of Content Fragments that enables authors to create rich text content. AemPageDataResolver, provided by the AEM SPA Editor JS SDK, is a custom Angular Router Resolver used to transform the route URL, which is the path in AEM including the. xml, and in ui. Editable Templates are used to define the JSON content structure AEM Content Services ultimately expose. We would like to show you a description here but the site won’t allow us. Headless AEM, or “decoupled” AEM, is Adobe Experience Manager’s approach to content delivery that separates the content from the presentation layer. The AEM Headless SDK is available for various platforms: AEM Headless SDK for client-side browsers (JavaScript) AEM Headless SDK for server-side/Node. Tap the ellipsis next to the environment in the Environments section, and select Developer Console. Then just add a Basic Auth password, which is hard to guess. The AEM Headless Client for JavaScript is used to execute the GraphQL persisted queries that power the app. This simple React app uses the AEM Headless SDK to query AEM Headless APIs for an Adventure content, and displays the web-optimized image using img element with srcset and picture element. Headless implementations enable delivery of experiences across platforms and channels at scale. This is your 24 hour, developer access token to the AEM as a Cloud Service environment. Adobe Developer App Builder extends AEM capabilities providing dynamic content without load time lag and on single-page apps. This server-to-server application demonstrates how to query content using AEM’s GraphQL APIs using persisted queries and print it on terminal. Persisted queries. Build a React JS app using GraphQL in a pure headless scenario. The repository structure package defines the expected, common state of /apps which the package validator uses to determine areas “safe from potential conflicts” as they are. References to other content, such as images or other Content Fragments can be dynamically inserted in-line within the flow of the text. When using the AEM React Editable Components with a SPA Editor-based React app, the AEM ModelManager SDK, as the SDK: Retrieves content from AEM. We’ll be using the sample Weekend React app that is an AEM headless app, so the majority of the content on this app is powered by content fragments over AEM’s GraphQL APIs. Headless implementations enable delivery of experiences across platforms and channels at scale. Pricing: A team plan costs $489. In this file, add the. Below is a summary of how the iOS application is built, how it connects to AEM Headless to retrieve content using GraphQL persisted queries, and how that data is presented. Tap Get Local Development Token button. Learn about the various deployment considerations for AEM Headless apps. Support enterprise governance and globalisation needs with a cloud-native architecture that’s always current, providing fast deployment cycles, auto-scaling and a self-healing infrastructure. Prerequisites. An end-to-end tutorial illustrating how to build-out and expose content using AEM's GraphQL APIs and consumed by an external app, in a headless CMS scenario. supports headless CMS scenarios where external client applications render experiences using content managed in AEM. Persisted queries. Learn. The client will then run until its task is finished or will interact with the user through a prompt. The AEM Headless SDK is available for various platforms: AEM Headless SDK for client-side browsers (JavaScript) AEM Headless SDK for server-side/Node. Following AEM Headless best practices, the Next. This simple React app uses the AEM Headless SDK to query AEM Headless APIs for an Adventure content, and displays the web-optimized image using img element with srcset and picture element. An end-to-end tutorial illustrating how to build-out and expose content using AEM Headless. $ cd aem-guides-wknd-spa. Additional resources can be found on the AEM Headless Developer Portal. Following AEM Headless best practices, the Next. View job listing details and apply now. AEM offers a wide range of advantages for businesses looking to streamline their content creation, management, and publishing workflows: Flexible content delivery. Next page. Overview; Single-page app; Web Component; Mobile; Server-to-server; Configurations. Now free for 30 days. This tutorial uses a simple native Android Mobile App to consume and display Event content exposed by AEM Content Services.