What is Blue Vibes?
Blue Vibes is a cloud-native development platform, which allows development teams to focus on the business logic.
Additionally, Blue Vibes is a documented set of cloud-native development best-practices and architecture decisions.
In the product sense, Blue Vibes as a whole is the product.
Internally, Blue Vibes consists of several deliverable modules, as can be seen in modules diagram.
Micro-applications are a collection of small, independent, and loosely coupled services. They are designed to deliver well recognized business value, like the ability to rapidly incorporate user feedback for continuous improvement. Blue Vibes platform speeds up the way how you build these new applications, optimize existing ones, and connect them all together. Its goal is to deliver apps users want at the pace a business needs.
Why use Blue Vibes?
Blue Vibes brings a set of patterns: architectural best practices, libraries, products and micro-applications that can be adjusted to specific needs.
This allows the development teams to focus on the essentials - the business logic.
Blue Vibes modules
Blue Vibes is a highly modular platform. The users can take only the pieces they would like to to use.
Blue Vibes Container (bv-container)
Lightweight GUI integration solution. Deals with front-end integration, meaning how a single Micro Application is integrated and displayed inside of the container.
More details can be found here.
Blue Vibes Mobile Container (bv-mobile-container)
Native mobile application (IOS or android) which wraps the functionality of BlueVibes container. The Blue Vibes micro-apps have in general responsive design. However, to allow a sophisticated user experience and advanced features on mobile devices, we provide this module. Security context (OpenIDConnect) is also provided for mobile use cases. Built with React Native.
More details can be found here.
Blue Vibes Test Suite (bv-test-suite)
A set of Java libraries which make the testing of Blue Vibes and custom written applications easy.
More details can be found here.
Blue Vibes Blueprints (bv-blueprints)
A set of utilities and scripts to allow creation of new micro-apps easier.
More details can be found here.
Blue Vibes Spring (bv-spring)
A set of Java libraries and utilities with security and testing in focus. Builds on top of Spring framework. Used when developing micro-applications to allow the developer to focus on what really matters, the domain. Internally used in bv-container itself.
More details can be found here.
Blue Vibes Cloud Storage Manager (bv-csm)
Module which deals with storage of documents or other files, primarily in the cloud. Mostly used as a library to create own customized standalone cloud storage micro-application. More details can be found here.
Micro-app concept
Micro-app is the smallest self-contained and deployable unit of BlueVibes.
Most of the time, a micro-app is packaged as docker image and run as docker container, which allows for all the advantages docker and cloud technologies give us.
In most cases a micro-app consists of a small back-end (logic, security, data access etc) and a front-end (GUI).
Front-end application can be exposed as a web-component and integrated inside of BV-Container or run standalone, this is shown as Component in the red in the diagram below.
More details about micro-app concept can be found here.
Blue Vibes vocabulary
We want to make sure everyone uses the same vocabulary when we talk about things in the context of BlueVibes.
- BlueVibes - Micro Application (see below) development platform (framework / system).
- BlueVibes module - one part of blue vibes system. Module is not equal to micro-app (see below). Modules are for example: BlueVibes Spring, BlueVibes Container, BlueVibes security as part of BlueVibes Spring etc… See Modules. These are the core elements that build up the BlueVibes ecosystem, in contrast to a MicroApp, which is not a module of BlueVibes, but is built with BlueVibes infrastructure and optionally, integrated into BlueVibes Front container.
- MicroApp (or Micro Application or just Application) - A standard application (micro-service / self contained system), built using standardised BlueVibes structure of maven project or otherwise. Consists usually of at least either front-end (GUI) or back-end, by default contains both. Can be integrated inside BlueVibes Container, most often as web-component, alternatively as iFrame.
- BlueVibes Container - Lightweight GUI integration solution. Deals with front-end integration, meaning how a single Micro Application is integrated and displayed inside of the container.
- BlueVibes Mobile Container - Native mobile application (IOS or android) which wraps the functionality of BlueVibes container. Security context (OpenIDConnect) is also provided for mobile use cases. Built with React Native.
- BlueVibes CSM (Cloud Storage Manager) - A module of BlueVibes which deals with storage (document or other files) in the cloud. Can be used as a BV-Spring library to create own, standalone cloud storage micro-app.
- BlueVibes (Web) Component - A front-end part exposed to the browser in the context of BlueVibes Container. One Micro-App may theoretically contain multiple (web) components.
- BlueVibes Spring - The back-end modules of Blue Vibes. BV-Security, BV-Test and others are here. Builds on top of Spring framework.
- BlueVibes blueprint - Project used to generate skeletons for new micro-applications (SDK).
- Back-End - Server-side. In the context of BlueVibes, this usually means Java Spring-Boot enhanced with BlueVibes Spring libraries.
- Front-End - GUI, things that happen client-side, in the browser. This usually means JavaScript, React and similar technologies.
- Third-party API / external system - Any other system BlueVibes communicates with, be it AIL (integration layer) or any other.
Getting started with Blue Vibes
We have a demo of Blue Vibes Container with several micro-applications integrated into it on this link: Banking Demo Link.
If you would like to get login access for the demo, please write to us on banking@ametiq.com.