Service Architecture

System Design

CloudIO System Design

Service Architecture

CloudIO Service Architecture

Page

Construct complex UI without writing a single line of code using the Page Designer and our 380+ out-of-the-box components and actions. Pages contain metadata about UI controls and layouts and associated triggers and actions. For example, button labels and acts to perform on button clicks.

Page Designer

Real-time Analysis & Auto Fix Suggestions

Analyze and validate pages in real-time as you work on them, receive suggestions for fixes and easily apply them with a single click.

Page Analysis Popup

Collaborative Development

Facilitate real-time collaboration during the development of a page. Let functional users access the same page, track changes, and provide immediate feedback to the page creator and developer.

Change History

Track every update made to a page through built-in versioning and auditing. Easily access all previous changes and restore to any earlier version with minimal clicks.

Difference between the two selected versions

Custom Components

Create your own React Component using the MUI Component library if you cannot find what you need among the existing 380+ components and actions. Use custom components in the Page Designer just like standard components, with built-in version management and change history. Install specific versions in one application and different versions in another application.

Component Store

DataSource

A metadata layer that sits between the source object (Database tables, Cloud systems APIs) and UI components. The UI components interact with the source object through the DataSource. It contains all field information about the source object and allows for extended functionality through scripting. DataSource handles CRUD operations against database tables seamlessly without any coding. Enhance business functionality by adding filters before fetching data and validations before posting any changes from the user by using modern ES2020 javascript.

External DataSource

Transform the DataSource filters and data from CloudIO's structure into the external Cloud System's structure, such as Salesforce, by using External DataSource.

Sample External DataSource for CosmosDB

Cloud DataSource

Utilize Cloud DataSource to integrate any simple REST API without the complexity of using External DataSource.

Cloud Functions

Small code units that can be invoked from the UI or scheduled to run at a given interval or at a specific day and time using CRON expression. Create Cloud Functions as reusable modules imported into other functions or used in the backend through scripting such as Workflows, DataSources, etc.

Cloud Function Definition

Test Automation

With the built-in test automation framework, you can record all the UI interactions (clicks & data entry) and replay on demand or scheduled.

Test Automation In Action

Sample Test Script Used for the above Test Automation

On-Premise Agent

On-Premise Agents can be used to connect to the data within your corporate firewall securely without having to open any inbound port through the firewall.

Other Services

Blob Storage

There is built-in integration with Azure Blob Storage & AWS S3 Storage service. You can configure the Storage of your choice at the Application level. Various processes like File Uploads, CSV Import, and Patch Uploads use the configured Storage for processing and storing BLOB data.

CSV Export / Import

Data displayed on the UI, e.g., Data Grid, can be exported in CSV format. Also, use an existing CSV file to import and auto-generate a DataSource (with a backing database table) based on the CSV data.

Email / Messaging

The platform provides built-in APIs for sending emails and posting messages to Microsoft Teams, Slack & Facebook Workplace.

Data Encryption

You can keep the sensitive part of your application data encrypted. By simply choosing the field attribute type as Encrypted String, the platform will take care of encrypting the data while storing in the source database or cloud system and decrypt it before displaying the data to the user on the UI. You can also do the same on demand using the built-in APIs.

File Attachment

You can use the built-in File Attachment component to upload files with inbuilt versioning support. This service uses the configured Blob Storage service to store the files in either Azure Blob or S3.

Health Check

Prometheus Metrics that can be fed into your existing monitoring system for Health Checks & Alerts.

GET /v1/metrics

Key Vaults

There is built-in integration with Azure Key Vault and AWS KMS. You can use the built-in APIs to store & fetch sensitive information like API keys and client secrets securely using either Azure Key Vault and AWS KMS services.

Logging

Logger API can be used for debugging purposes within any of the server-side scripts. The messages that are logged using this API can be viewed in real-time using Debug Console on the browser and they are also stored on the server for later analysis.

Lookups

The platform provides a built-in Lookup Management Framework that you can leverage to define lookup values to be used in your application.

OAuth / SSO

There is built-in support for OAuth 2 services like Auth0, and Google Auth API, that you can leverage to configure SSO for your application instead of using the built-in Authentication provided by the platform.

Patch Management

Patch Management can be used to migrate your application metadata from one instance to another. You can download the complete Application patch or a partial patch with cherry-picked objects, which can then be source controlled and uploaded into the target system for code migration.

Profile Values

You can define profile options (similar to ENV variables) and specify values at various levels via. User, Role, Application & Organization.

db.getProfile

Redis Cache

Redis is used for caching metadata for superior performance. You can use the Redis cache to store application data as needed using the built-in cache APIs.

cache API

Role Based Access

You can define various Roles at the Application level and assign them to respective users. DataSources can then be assigned to different roles with different permissions via. Read, Insert, Update, Delete, Audit & Export.

Schedule Jobs

You can create Cloud Functions and schedule them to run at a specific date and time or regular interval using CRON expression.

Workflow Engine

The CloudIO workflow engine is highly scalable and flexible. You can extend the workflow engine by adding your custom Workflow Nodes in the language of your choice.

Workflow Designer

There is also a built-in way of defining custom workflow nodes using Javascript as shown below.

Custom Workflow Node

Last updated

Was this helpful?