MICRO FRONT-END COMPOSITION AND POLYMORPHISM
A system including at least one processor and non-transitory computer-readable storage storing instructions that, when executed by the at least one processor, cause the system to: generate a context configuration module programmed to compose a user experience based on a user context and a registry of micro front-ends; and generate a rendering module programmed to render one or more micro front-ends from the registry of micro front-ends into a framework to deliver the user experience.
1 . A system, comprising:
at least one processor; and
non-transitory computer-readable storage storing instructions that, when executed by the at least one processor, cause the system to:
generate a context configuration module programmed to compose a user experience based on a user context and a registry of micro front-ends; and
generate a rendering module programmed to render one or more micro front-ends from the registry of micro front-ends into a framework to deliver the user experience.
2 . The system of claim 1 , wherein the framework defines at least one of a message format, a time period for an action, and an operation message requirement.
3 . The system of claim 1 , wherein the user context comprises real-time data of user interaction with the user experience.
4 . The system of claim 3 , wherein each of the one or more micro front-ends is rendered with a first presentation.
5 . The system of claim 4 , wherein at least one of the one or more micro front-ends is rendered with a second presentation in response to a change in the user context.
6 . The system of claim 5 , wherein a feedback prompt is provided to a user associated with the user context along with the second presentation.
7 . The system of claim 5 , wherein each of the first presentation and the second presentation provide a same functionality.
8 . The system of claim 5 , wherein each of the first presentation and the second presentation is selected from a group consisting of a tile, a button, a header element, a composite micro front-end, a sidebar, a chat element, and a hyperlink.
9 . The system of claim 3 , wherein at least one of the one or more micro front-ends is removed from the user experience based on a lack of or reduction in user data associated with interaction with the at least one of the one or more micro front-ends.
10 . The system of claim 1 , wherein the context configuration module is further programmed to:
present the registry of micro front-ends to a user associated with the user context;
receive a selection from the user; and
compose the user experience based on the selection.
11 . The system of claim 1 , wherein the context configuration module is further programmed to:
prompt a user associated with the user context to make a selection between at least two micro front-ends; and
compose the user experience based on the selection.
12 . A method for composition of polymorphic micro front-end experiences, the method comprising:
retrieving a template; and
composing a composite micro front-end by combining one or more atomic micro front-ends according to the template.
13 . The method of claim 12 , wherein the template defines one or more of a conformance criteria, a layout, a branding, and a sizing.
14 . The method of claim 12 , wherein at least one of the one or more atomic micro front-ends is pre-authored.
15 . The method of claim 12 , wherein the one or more atomic micro front-ends are selected according to interdependence.
16 . The method of claim 12 , wherein the template comprises at least one open slot to be filled at runtime.
17 . A method of rendering a polymorphic micro front-end, the method comprising:
rendering a micro front-end with a first function and a first presentation according to a user context;
determining a change is present in the user context; and
rendering the micro front-end with a second function and a second presentation according to the change in the user context.
18 . The method of claim 17 , wherein each of the first presentation and the second presentation is selected from a group consisting of a tile, a button, a header element, and a hyperlink.
19 . The method of claim 17 , further comprising prompting as user to provide feedback on the second presentation.
20 . The method of claim 17 , wherein the change is based on a user interaction with the micro front-end.