Explaining The Floresight Technology Stack
As a retail productivity cloud platform, Floresight encompasses a growing collection of collaborative apps. We use a core platform with the following capabilities:
- Providing authentication and authorization services for all apps
- Providing an extensible communication platform for all apps
- Serving as a base of organizational data management
- Serving as a platform to manage and execute recurring tasks
- Providing a reporting and analytics base for other apps to use
Having spent dozens of years in the retail software world, the team of Floresight had already experienced the need for an integrated and scalable multi-app platform. From Engage to KPI Coach to ServiceSense, our current offerings all rest on the platform and are immediately accessible after subscribing.
The Need for Integration and Collaboration
Floresight is designed with a firm belief in integration and collaboration. Keeping true to the KISS principle, our design for Floresight came from a place of balancing simplicity with flexibility. Depending on the device being used, the front-end could be an Angular based app or it could be an iOS or Android app that communicates with the backend services.
We’ve kept the same base structure for all apps primarily because we wanted them to be flexible and open to integration. With this in mind, all communication between apps also happens via REST-APIs.
In order for our architecture to be flexible, we’ve made it based on loosely coupled REST APIs, wherein we have generic REST APIs that are shared across products/apps when they communicate with the core, the latter of which serves as the backbone for all applications that fall under the Floresight umbrella. For example, when we develop or integrate with a new application and it has to communicate with the core regarding its roles and permissions, there is a generic API that will be used similar to any other product.
A lot of times, a REST API based architecture is assumed to be a loosely coupled one. However, for each communication that we end up making new APIs for, it won’t really remain like that for a long time. A typical communication diagram between the various apps and core or within each-other would look like the following:
The dotted line between Engage and KPI Coach means that before they communicate with each other, they first talk to the core platform, receive relevant permissions and then continue the communication.
Behind the scenes, in order to support all the myriad of needs of the applications and the platform, we have a huge hive of tech-stack and it looks somewhat as follows:
If you’re interested in learning more about the Floresight technology stack, reach out to one of our platform consultants for a demo, today.