IP Library › Patent Application 18413617
Patent Application
App. No. 18/413,617

DYNAMIC INTERFACE GENERATION USING MICRO-FRONTENDS

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
18/413,617
Abstract

A method for webpage generation is disclosed. The method includes receiving configuration data from each of a plurality of micro-frontends registered with a backend orchestrator service, each of the plurality of micro-frontends is configured to provide content to be displayed on a graphical user interface (“GUI”). Each micro-frontend is configured to provide content of at least one content type. Each of the plurality of micro-frontends is from a content provider. The method includes reading the configuration data from each of the plurality of micro-frontends. The configuration data of a micro-frontend of the plurality of micro-frontends includes identification of the micro-frontend and size and position information for display on the GUI of the content of the micro-frontend. The method includes generating a UI definition file. The UI definition file includes the configuration data from the plurality of micro-frontends. The method includes publishing the GUI from the UI definition file.

Claims (44)

1 . A method comprising:

receiving configuration data from each of a plurality of micro-frontends registered with a backend orchestrator service, each of the plurality of micro-frontends is configured to provide content to be displayed on a graphical user interface (“GUI”), wherein each of the plurality of micro-frontends is from a content provider that provides the content for the micro-frontend;

reading the configuration data from each of the plurality of micro-frontends, the configuration data of a micro-frontend of the plurality of micro-frontends comprising identification of the micro-frontend and size and position information for display on the GUI of the content of the micro-frontend;

generating a user interface definition file comprising the configuration data from the plurality of micro-frontends; and

publishing the GUI from the user interface definition file.

2 . The method of claim 1 , further comprising defining, based at least in part on the configuration data, a number of rules for a layout for the GUI, the number of rules configured to resolve a layout conflict between the configuration data of the plurality of micro-frontends, wherein the user interface definition file further comprises the number of rules.

3 . The method of claim 2 , wherein the layout conflict comprises an overlap between a first area of the GUI, the first area of the GUI defined by configuration data of a first micro-frontend of the plurality of micro-frontends, and a second area of the GUI, the second area of the GUI defined by configuration data of a second micro-frontend of the plurality of micro-frontends.

4 . The method of claim 2 , wherein defining, based at least in part on the configuration data, the number of rules further comprises:

identifying a conflict between configuration data of a first micro-frontend of the plurality of micro-frontends and configuration data of a second micro-frontend of the plurality of micro-frontends; and

determining a priority between the first micro-frontend and the second micro-frontend.

5 . The method of claim 1 , wherein reading the configuration data from each of the plurality of micro-frontends comprises reading the configuration data from a backend orchestration service, wherein each of the plurality of micro-frontends registers with the backend orchestration service and transmits configuration data of the micro-frontend to the backend orchestration service.

6 . The method of claim 5 , wherein generating the user interface definition file further comprises combining the configuration data of each of the plurality of micro-frontends into a unified structure in the user interface definition file.

7 . The method of claim 5 , wherein publishing the GUI further comprises accessing, via the backend orchestration service, the content from each of the plurality of micro-frontends.

8 . The method of claim 1 , further comprising selecting a number of fixed elements not provided by the content provider, wherein publishing the GUI comprises publishing each of the number of fixed elements to the GUI.

9 . The method of claim 8 , wherein the number of fixed elements comprises at least one of: a header of a page of the GUI, a footer of a page of the GUI, a navigation element of the GUI, a web address bar, a menu of the GUI, and/or any combination thereof.

10 . The method of claim 1 , wherein each of the plurality of micro-frontends comprises an address associated with the GUI.

11 . The method of claim 1 , wherein the size and position information comprise at least one of: a total area of the micro-frontend on the GUI, a page of the GUI on which to position the micro-frontend, and/or a region of a page of the GUI on which to position the micro-frontend.

12 . The method of claim 1 , further comprising:

determining that:

an additional micro-frontend has registered with the backend orchestration service;

content is available for a registered micro-frontend that was previously unavailable; and/or

a micro-frontend of the plurality of micro-frontends is unavailable;

reading configuration data from the additional micro-frontend or the micro-frontend that was previously unavailable and/or removing configuration data from the unavailable micro-frontend;

updating the user interface definition file based at least in part on the additional configuration data and/or the removed configuration data; and

re-publishing, using the updated user interface definition file, the GUI.

13 . An apparatus comprising:

a micro-frontend ID module configured to receive configuration data from a plurality of micro-frontends registered with a backend orchestrator service, each of the plurality of micro-frontends is configured to provide content to be displayed on a graphical user interface (“GUI”), wherein each of the plurality of micro-frontends is from a content provider that provides the content for the micro-frontend;

a configuration module configured to read the configuration data from each of the plurality of micro-frontends, the configuration data of a micro-frontend of the plurality of micro-frontends comprising identification of the micro-frontend and size and position information for display on the GUI of the content of the micro-frontend;

a generation module configured to generate a user interface definition file, the user interface definition file comprising the configuration data from the plurality of micro-frontends; and

a publishing module configured to publish the GUI from the user interface definition file,

wherein at least a portion of said modules comprises hardware circuits, a programmable hardware device and/or code, the code stored on non-transitory computer readable storage media.

14 . The apparatus of claim 13 , further comprising a rules module configured to define, based at least in part on the configuration data, a number of rules for a layout for the GUI, the number of rules configured to resolve a layout conflict between the configuration data of the plurality of micro-frontends, wherein the user interface definition file further comprises the number of rules.

15 . The apparatus of claim 14 , wherein the layout conflict comprises an overlap between a first area of the GUI, the first area of the GUI defined by configuration data of a first micro-frontend of the plurality of micro-frontends, and a second area of the GUI, the second area of the GUI defined by configuration data of a second micro-frontend of the plurality of micro-frontends.

16 . The apparatus of claim 14 , wherein the apparatus further comprises:

a conflict module configured to identify a conflict between configuration data of a first micro-frontend of the plurality of micro-frontends and configuration data of a second micro-frontend of the plurality of micro-frontends; and

a priority module configured to determine a priority between the first micro-frontend and the second micro-frontend.

17 . The apparatus of claim 13 , further comprising a backend module configured to read the configuration data from a backend orchestration service, wherein each of the plurality of micro-frontends registers with the backend orchestration service and transmits configuration data of the micro-frontend to the backend orchestration service.

18 . The apparatus of claim 17 , further comprising a structure module configured to combine the configuration data of each of the plurality of micro-frontends into a unified structure, the unified structure configured to be used by the generation module to generate the user interface definition file.

19 . The apparatus of claim 17 , wherein the publishing module is further configured to publish the GUI by accessing, via the backend orchestration service, the content from each of the plurality of micro-frontends.

20 . A program product comprising a non-transitory computer readable storage medium storing code, the code being configured to be executable by a processor to perform operations comprising:

receiving configuration data from each of a plurality of micro-frontends registered with a backend orchestration service, each of the plurality of micro-frontends is configured to provide content to be displayed on a graphical user interface (“GUI”), wherein each of the plurality of micro-frontends is from a content provider that provides the content for the micro-frontend;

reading the configuration data from each of the plurality of micro-frontends, the configuration data of a micro-frontend of the plurality of micro-frontends comprising identification of the micro-frontend and size and position information for display on the GUI of the content of the micro-frontend;

generating a user interface definition file comprising the configuration data the plurality of micro-frontends; and

publishing the GUI from the user interface definition file.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 8, 2024
From: LENOVO GLOBAL TECHNOLOGY (UNITED STATES) INC.
To: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE LTD.
Reel/Frame 067929/0952 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 18, 2024
From: COZMA, ALEXANDRU; PAUN, VALENTIN; VOICU, IOANA; OPRIN, ANDREI; DUMITRESCU, ANDREI; TUCUNETE, MARIOARA-ALINA; COCHILET, SERBAN; TUDORACHE, MIHAI-RAZVAN
To: LENOVO GLOBAL TECHNOLOGY (UNITED STATES) INC.
Reel/Frame 066170/0468 →