IP Library › Granted Patent US 12,632,223
Granted Patent B1
US 12,632,223 · App. 19/306,096 · Granted May 19, 2026

Automatic generation of compliant user interface code

Inventors: Giacomo Domeniconi (Miami, FL); Samuel Assefa (Watertown, MA)
G06F8/30
View Patent ↗
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 12,632,223
App. No.
19/306,096
Filed
Aug 21, 2025
Granted
May 19, 2026
Kind
B1
Art Unit
2192
USPC
717/106
Abstract

An embodiment detects, in a structured data corresponding to a graphical user interface (UI) design, a UI component. The embodiment determines, using a compliance specification retrieved from a compliance system repository, that the UI component is non-compliant. The embodiment extracts a code block from the compliance system repository, where the code block is executable to render a compliant component in place of the UI component on a UI rendering from the UI design. The embodiment combines, to automatically output a front-end UI code, the code block with generated code, the generated code corresponding to another element of the UI design, and the front-end UI code rendering a complete UI page corresponding to the UI design.

Claims (53)

1 . A computer-implemented method comprising:

enabling automatic graphical user interface (UI) code adaptation according to a dynamically changing specification without changing a linking with a predefined UI elements library, the enabling comprising:

executing a code configured for detecting, by an enforcement application executing in a data processing system and responsive to a change made in a compliance specification at a first time, a UI component in structured data corresponding to a UI design loaded in a memory accessible to the enforcement application;

executing a code configured for determining, at the first time, using the compliance specification, the UI component to be non-compliant, the compliance specification being selected based on a context of use of the UI design wherein the UI component is subject to different compliance specifications based on different contexts of use of the UI component in the UI design, and wherein the UI component is not subject to any compliance specification in at least one context; and

executing a code block configured for rendering a compliant component in place of the UI component on a UI rendering from the UI design.

2 . The computer-implemented method of claim 1 , further comprising:

executing a code configured for adjusting, to form an adjusted UI component, a parameter of the UI component based on a corresponding parameter value specified in the compliance specification; and

selecting the code block in a compliance system repository based on a best fit match between the adjusted UI component and a compliant UI component in the compliance system repository.

3 . The computer-implemented method of claim 1 , further comprising:

executing a code configured for adjusting, to form an adjusted UI component, a first parameter of the UI component based on a first corresponding parameter value specified in the compliance specification corresponding to a first compliant UI component, a second parameter of the UI component based on a second corresponding parameter value specified in a second compliance specification corresponding to a second compliant UI component:

selecting a plurality of code blocks in a compliance system repository based on a best fit match between the adjusted UI component and the first compliant UI component and the second compliant UI component; and

executing a code configured for combining the plurality of code blocks to form the code block.

4 . The computer-implemented method of claim 1 , further comprising:

executing a code configured for determining, using a second compliance specification a second UI component to be compliant;

executing a code configured for extracting from a compliance system repository a second code block corresponding to the second UI component; and

executing a code configured for blending, as a part of the combining, the second code block into the front-end UI code.

5 . The computer-implemented method of claim 1 , further comprising:

executing a code configured for receiving the structured data via an application programming interface (API) of a UI design application.

6 . The computer-implemented method of claim 1 , wherein the structured data comprises a document object model (DOM).

7 . The computer-implemented method of claim 1 , wherein the structured data comprises a tree structure, the tree structure comprising a set of nodes connected via a set of edges, wherein a subset of the set of nodes is representative of the UI component, and an edge from a node in the subset of nodes is representative of a positional relationship of the UI component to an element of the UI design.

8 . The computer-implemented method of claim 1 , wherein the compliance specification comprises a set of values corresponding to a set of parameters of a compliant UI component.

9 . The computer-implemented method of claim 1 , wherein the compliant component is a variation of the UI component where a maximum number of parameters adjustable for compliance have been adjusted for compliance in accordance with the compliance specification.

10 . A computer program product comprising one or more computer readable storage media, and program instructions collectively stored on the one or more computer readable storage media, the program instructions executable by a set of one or more processors to cause the set of one or more processors to perform operations comprising:

enabling automatic graphical user interface (UI) code adaptation according to a dynamically changing specification without changing a linking with a predefined UI elements library, the enabling comprising:

executing a code configured for detecting, by an enforcement application executing in a data processing system and responsive to a change made in a compliance specification at a first time, a UI component in structured data corresponding to a UI design loaded in a memory accessible to the enforcement application;

executing a code configured for determining, at the first time, using the compliance specification, the UI component to be non-compliant, the compliance specification being selected based on a context of use of the UI design wherein the UI component is subject to different compliance specifications based on different contexts of use of the UI component in the UI design, and wherein the UI component is not subject to any compliance specification in at least one context; and

executing a code block configured for rendering a compliant component in place of the UI component on a UI rendering from the UI design.

11 . The computer program product of claim 10 , the operations further comprising:

executing a code configured for adjusting, to form an adjusted UI component, a parameter of the UI component based on a corresponding parameter value specified in the compliance specification; and

selecting the code block in a compliance system repository based on a best fit match between the adjusted UI component and a compliant UI component in the compliance system repository.

12 . The computer program product of claim 10 , the operations further comprising:

executing a code configured for adjusting, to form an adjusted UI component, a first parameter of the UI component based on a first corresponding parameter value specified in the compliance specification corresponding to a first compliant UI component, a second parameter of the UI component based on a second corresponding parameter value specified in a second compliance specification corresponding to a second compliant UI component:

selecting a plurality of code blocks in a compliance system repository based on a best fit match between the adjusted UI component and the first compliant UI component and the second compliant UI component; and

executing a code configured for combining the plurality of code blocks to form the code block.

13 . The computer program product of claim 10 , the operations further comprising:

executing a code configured for determining, using a second compliance specification a second UI component to be compliant;

executing a code configured for extracting from a compliance system repository a second code block corresponding to the second UI component; and

executing a code configured for blending, as a part of the combining, the second code block into the front-end UI code.

14 . The computer program product of claim 10 , the operations further comprising:

executing a code configured for receiving the structured data via an application programming interface (API) of a UI design application.

15 . The computer program product of claim 10 , wherein the structured data comprises a document object model (DOM).

16 . The computer program product of claim 10 , wherein the structured data comprises a tree structure, the tree structure comprising a set of nodes connected via a set of edges, wherein a subset of the set of nodes is representative of the UI component, and an edge from a node in the subset of nodes is representative of a positional relationship of the UI component to an element of the UI design.

17 . The computer program product of claim 10 , wherein the compliance specification comprises a set of values corresponding to a set of parameters of a compliant UI component.

18 . The computer program product of claim 10 , wherein the stored program instructions are stored in a computer readable storage device in a data processing system, and wherein the stored program instructions are transferred over a network from a remote data processing system.

19 . The computer program product of claim 10 , wherein the stored program instructions are stored in a computer readable storage device in a server data processing system, and wherein the stored program instructions are downloaded in response to a request over a network to a remote data processing system for use in a computer readable storage device associated with the remote data processing system, further comprising:

executing a code configured to meter use of the program instructions associated with the request; and

executing a code configured to generate an invoice based on the metered use.

20 . A computer system comprising a set of one or more processors and one or more computer readable storage media, and program instructions collectively stored on the one or more computer readable storage media, the program instructions executable by the set of one or more processors to cause the processor to perform operations comprising:

executing a code configured for detecting, in a structured data corresponding to a graphical user interface (UI) design, a UI component;

executing a code configured for enabling automatic graphical user interface (UI) code adaptation according to a dynamically changing specification without changing a linking with a predefined UI elements library, the enabling comprising:

executing a code configured for executing a code configured for detecting, by an enforcement application executing in a data processing system and responsive to a change made in a compliance specification at a first time, a UI component in structured data corresponding to a UI design loaded in a memory accessible to the enforcement application;

executing a code configured for determining, at the first time, using the compliance specification, the UI component to be non-compliant, the compliance specification being selected based on a context of use of the UI design wherein the UI component is subject to different compliance specifications based on different contexts of use of the UI component in the UI design, and wherein the UI component is not subject to any compliance specification in at least one context; and

executing a code block configured for rendering a compliant component in place of the UI component on a UI rendering from the UI design.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 21, 2025
From: DOMENICONI, GIACOMO; ASSEFA, SAMUEL
To: U.S. BANK NATIONAL ASSOCIATION
Reel/Frame 072082/0349 →
Continuity (1)
Continuation 19057008 · Feb 19, 2025
References Cited (26)
US 11275570B1 · Collins · 2022 [cited by examiner]
US 11651245B2 · Defiebre · 2023 [cited by applicant]
US 20180374047A1 · Sarkar · 2018 [cited by examiner]
US 20190212990A1 · Kulkarni · 2019 [cited by examiner]
US 20220067169A1 · De Cremer · 2022 [cited by examiner]
US 20230236802A1 · Raju · 2023 [cited by examiner]
US 20240012909A1 · Young · 2024 [cited by examiner]
US 20240119156A1 · Stewart · 2024 [cited by examiner]
US 20240281248A1 · Shah · 2024 [cited by examiner]
US 20250013697A1 · Estoesta · 2025 [cited by examiner]
US 20250258657A1 · Duggal · 2025 [cited by examiner]
US 20250355645A1 · Crabtree · 2025 [cited by examiner]
Forough Mehralian, Automated Code Fix Suggestions for Accessibility Issues in Mobile Apps, 2024, pp. 1-5. https://arxiv.org/pdf/2408.03827v1 (Year: 2024). [cited by examiner]
Katja Tuma, Checking security compliance between models and code, 2020, pp. 1-24. https://arxiv.org/pdf/2108.08579 (Year: 2020). [cited by examiner]
Wood, Adobe XD Classroom in a Book® 2020 release, 2020, https://ptgmedia.pearsoncmg.com/images/9780136583806/samplepages/9780136583806_Sample.pdf. [cited by applicant]
Sketch, Developer handoff, Sep. 17, 2024, https://www.sketch.com/docs/developer-handoff/. [cited by applicant]
Pietroluongo, InVision Studio: An Overview and Review, Sep. 20, 2022 https://www.elegantthemes.com/blog/design/invision-studio-an-overview-and-review. [cited by applicant]
Affinity, Affinity Designer 2 (Desktop) Quickstart Guide, 2024, https://affinity.serif.com/en-us/learn/designer/desktop/quickstart/. [cited by applicant]
Adobe, Adobe Photoshop Help, Nov. 5, 2019, https://helpx.adobe.com/pdf/photoshop_reference.pdf. [cited by applicant]
GIMP, GNU Image Manipulation Program—User Manual, 2024, docs.gimp.org/odftest/en.pdf. [cited by applicant]
REACT, Describing the UI, 2024, https://react.dev/learn/describing-the-ui. [cited by applicant]
Angular, Components, 2024, https://angular.dev/essentials/components. [cited by applicant]
Adobe, Adobe Experience Manager Guides, 2024, https://business.adobe.com/content/dam/dx/us/en/products/experience-manager/guides/aem-guides/Adobe_Experience_Manager_Guides_Solution_Brief.pdf. [cited by applicant]
Vue.JS, Introduction, 2024, https://vuejs.org/guide/introduction.html. [cited by applicant]
Li et al., ULDGNN: A Fragmented UI Layer Detector Based on Graph Neural Networks, Aug. 13, 2022. [cited by applicant]
Jiang et al., Graph4GUI: Graph Neural Networks for Representing Graphical User Interfaces, CHI '24, May 11-16, 2024, https://doi.org/10.1145/3613904.364282. [cited by applicant]