Installation and Developer Guide
Source Code Organization:
All product documentation is organized into 7 Source Code repositories housed inside Bitbucket. See below a short description of each of them.
CommunicationsHub :
Houses the React and Next JS UI elements, State Management, Layout components with end user interface to different personas accessing the system.
Documentation:
Houses the documentation web site that documents all functional and technical aspects of the product.
GatewayServices:
Houses the code necessary for microservices that interact with the product. Both incoming and outgoing traffic is organized into re-usable components with high sense of observability and security around resource access.
CalculationEngine:
Mainly houses unattended tasks that are performed on large volumes of data. Data aggregations and calculations are performed on RAW data to arrive at some outputs that have business significance.
UIComponents:
Product and Enterprise level branding either Solo or Co-Branding is done through Corporate proprietary user interface components that are re-usable across multiple projects.
StudioCode:
Serves as a repository for Information Technology resources to save their development work through the editor page to this repository under their name with or without SSO (Single Sign-On). The supported language frameworks are Java, Python, Scala, SQL and R.
TestingFramework:
As part of the product features, we support unit test cases, end to end test cases, API test cases, performance test cases. Except unit test cases, the rest of the automated testing frameworks are housed under this repository.
Studio:
Our visionary architecture looks for “Data Science Studio” and “Data Mesh Studio”. The studio that helps Data Scientists, Data Engineers, Data Analysts perform their functions. The source code behind that Studio is housed under this repository.
Branching Strategies
There are 3 main branches for our repositories - develop, staging and main
User branches are off of develop branch and user branches are merged into develop branches through pull requests that need to be approved by Technical Lead(s).
Demo code base and sandbox environment
Staging branch is typically deployed to a demo sandbox environment for product demoes, feature improvements etc. A specific customer demo targeting some pre-sales POC is taken off of staging branch and deployed on sanbox environment.