Enterprise Server
Based on NodeJS, the Enterprise Server is the main container of all logic and processing between the user and the Search engine
Enterprise UI
The end-user interface which encloses the search UI and the administration UI, built with Angular 10 as the base framework and Angular Material as the UX framework
Elasticsearch (Database)
In this architecture, Elasticsearch is used as the Non-SQL database, to store information such as the roles and permission, log analytics, feedback and any data generated by the Enterprise Server
Authentication
The authentication layer verifies all the connections originated between the server API and the Web Socket / Interface / External calls
Web Socket
The Web Socket for features requiring full-duplex communication such as the web chat, a claim system, real time notification, and more.
Endpoints
Each endpoint is functionality added to the API, normally pair with an Engine for search executions
Engines
Engines are in charge with the connection between the endpoints and the search engine and/or database
Configuration Files
All the configuration files, for both server and user interface, are store in the same file structure to simplify customization of the Enterprise Search, the configuration files are JavaScript files loaded as NodeJS modules, making it flexible and editable in real time (this last statement true only for the user interface configuration)