Axinom Mosaic is a modular, service-oriented platform that allows you to create powerful and flexible backend solutions. It provides you with everything you need to build up your tailored digital asset management and deployment.
Axinom Mosaic works for a variety of applications, from OTT streaming platforms in the media industry to in-flight entertainment and IoT systems in transportation sector. Any content- or data-oriented use cases are supported by Axinom Mosaic.
Our platform enables you to take full control of your software solution. Pick and choose the components you need, and customize, enhance, and develop them further with your own team.
The main parts of the Mosaic Platform are:
Typical Scenario - Video Platform
Let’s say, you are going to build an Video Platform / OTT Solution (Over-the-top) with Axinom Mosaic.
Core Services will cover aspects like service orchestration, user management/ authentication/authorization, logging & reporting, and more.
Managed Services, such as the Image Service, Encoding Service, and DRM Service, will provide ready-to-use functionality.
The Mosaic Media Template comes with a number of Customizable Services, such as Media Service and Catalog Service, available in source code, which you can use as-is or customize according to your requirements.
The Development Framework helps your developers to solve development tasks very efficiently, so you can enjoy a short time-to-market.
Core Services are services that are necessary for Mosaic Platform to operate, such as orchestration, identity, authentication, authorization, reporting.
See Core Services for more details.
Managed Services are developed and operated by Axinom, for example, Image Service, Encoding Service, and DRM Service. They are also called SaaS (Software-as-a-Service).
See Managed Services for more details.
Customizable Services are provided by Axinom in source code under an open-source license and can be used as-is or with individual customization, for example Media Service, Catalog Service, Entitlement Service.
See Customizable Services for more details.
Templates provide a good starting point for your own development. They contain one or more Customizable Services together with everything you need to develop, build, and deploy your services. All services are provided as source code under an open-source license. You can freely adjust it to cater to your specific business needs.
Mosaic Media Template
Mosaic Media Template contains a number of Customizable Services for building all kinds of Video/OTT solutions.
It is the starting point for:
The following services are a part of the Mosaic Media Template:
Media Service - manage metadata for movies, TV shows, linear streams, etc. with integrated image and video workflows
Catalog Service - manage and expose catalogs of media entities, such as movies, TV shows, seasons, episodes, etc., for the frontend apps
Entitlement Service - provides entitlements for the video playback requests. The generated entitlement message can be exchanged for a valid DRM license by the Axinom DRM License Service.
Custom Services can be developed by Axinom Partners and Customers using the Mosaic Development Framework. Templates with the included Customizable Services provide a good starting point for custom development. Additionally, new services can be developed completely from scratch.
3rd party services can be easily integrated into the Mosaic eco-system using defined interfaces.
Micro-Services and Micro-Frontends
Mosaic is all about Services. Please find below the core concepts related to Services, Micro-Services, and Micro-Frontends.
Mosaic follows the Micro-Service architecture, where applications are arranged as a collection of loosely coupled, fine-grained Services. Each Service has its own data. The Services communicate over defined interfaces (Web API, GraphQL, Service Bus). The Services can be developed and deployed independently.
Recommended reading: https://martinfowler.com/articles/microservices.html
In a traditional Micro-Service architecture, the application consists of a number of fine-grained loosely coupled Micro-Services, each of those exposing its API. However, the UI which interfaces with a user is still a monolithic application, which means that the frontend is neither fine-grained or loosely coupled and suffers from similar issues than a monolith backend service.
Micro-Frontends bring the idea of Micro-Services further into the area of User Interfaces. Now, each service can provide a part of a frontend-application, called Micro-Frontend. All Micro-Frontends are - at runtime - loaded and executed together in a single web application.
The Mosaic user interface - also known as Management System (or sometimes Content Management System - CMS) - is built using Micro-Frontends. It allows the separation of the user experience by service, while still having a consistent Single-Page-Application experience for the user.
Mosaic provides optimized UI components and libraries to seamlessly integrate new Micro-Frontends into the Management System while keeping the user experience consistent and predictable.
Read Mosaic Development Framework for details.
Micro-Frontends can share Extensions and functionality with other Micro-Frontends. Extensions render individual parts of the UI. Other Micro-Frontends can integrate such exposed extensions. For example, the Image Service exposes an extension which renders a preview of an image and another which allows to browse and select images. Other Micro-Frontends can integrate an image preview or image selection without knowing any details about their UI.
Recommended reading: https://martinfowler.com/articles/micro-frontends.html