Skip to main content

Architecture Overview

An overview of Candu is architected, including its design principals and major elements.

Flora Sanders avatar
Written by Flora Sanders
Updated over 12 months ago

Design principles

Candu has been designed with the following principles in mind:

  • Adapt to your application: We recognize that every business has different needs regarding content and UI. We created Candu to enable your content to adapt and integrate with your app easily.

  • Always available: We know that your solution requires high availability, which is why Candu scales to your demands.

  • Customization as a first-class citizen: Every customer needs a unique solution in the enterprise world. We wanted to create a tool that can be easily personalized and adapted according to each customer's needs.

  • Analytics to drive better outcomes: At Candu, we believe that work on both qualitative and quantitative levels is needed to drive better outcomes. Our personalization features allow you to work closely with your customers, while our native analytics enable you to take a more quantitative approach.

Architecture at a Glance

The diagram below details information flowing from the user through the Candu SDK, API, CDN, and Content and returning to the provider and user.

The below diagram details information flowing from the user, through the Candu SDK, API, CDN, and Content, the returning to the provider and user

Candu's components

Let's look at all the various entities in Candu and talk about their role:

Dashboard

You can edit Content, manage Segments, and view Analytics in the dashboard. Here, you'll also find API keys and client tokens and be able to manage your application's security settings. To visit your dashboard, please login here.


SDK

The Candu SDK is installed inside your application to help you render content for your customers and provide them with additional functionality.

The SDK's main functionalities are:

  1. Rendering Content and Segments

  2. Collecting Analytics via Eventing


CDN

To provide high availability and fast delivery, Candu uses a CDN to publish Content and Segments. While you edit a Segment or piece of Content from the dashboard, it will be saved on our servers.

However, we will upload them once you publish them to our CDN. We use this publishing mechanism to:

  1. Provide a safety mechanism so your customers won't see every draft you save.

  2. Increase the speed and availability of any content that you create.

  3. Provide a versioning mechanism for any content that you create.


Styleguide

The Styleguide is a fundamental part of the application. We created this abstraction for the following reasons:

  1. Customize presentation and styling: Integrating a style guide with the SDK enables you to customize every item style so that each UI element matches your intended product experience.

  2. Add functionality: The Styleguide API enables you to implement advanced use cases by customizing the order in which each tree is rendered and allowing you to customize how each component is constructed.

You can learn more about how Styleguide works in our in-depth guide.

Did this answer your question?