{
  "page_ir": {
    "page_id": "form_and_list",
    "page_goal": "A single-page layout serving as the entire application. At the top or center of the page is a clean form section with a heading/title ('Single Page Sample' or 'Submit Your Info'). The form contains: (1) a 'Name' text input field with placeholder 'Enter your name', required, max 100 chars, minimum 2 chars validation; (2) an 'Email' email input field with placeholder 'Enter your email', required, max 255 chars, email format validation; (3) a primary styled 'Submit' button that is disabled when fields are empty or invalid. Client-side validation runs on submit — inline error messages appear near each field if validation fails (e.g. 'Name must be at least 2 characters', 'Please enter a valid email'). On successful submit, the form clears both fields and the new entry is prepended to a vertical list displayed directly below the form. Each list entry is a card or bordered row showing the name prominently and the email below or beside it, with consistent spacing and visual separation. When no entries exist, an empty state message reads 'No submissions yet.' The list grows as more entries are submitted, with newest entries appearing first. All data is stored in client-side memory only (session-based). The layout is responsive: inputs stack vertically on mobile, adequate touch targets (44x44px minimum), and the list remains readable across breakpoints (320px mobile, 768px tablet, 1024px+ desktop). Minimal color palette, clean whitespace, no extra features, no routing, no sidebar or top nav.",
    "style": {
      "tone": "professional",
      "theme": "light",
      "density": "comfortable",
      "color_intent": null
    },
    "accessibility": {
      "required_labels": [],
      "skip_navigation": true,
      "focus_management": true,
      "announce_changes": []
    },
    "responsive": {
      "breakpoints": {
        "sm": 640,
        "md": 768,
        "lg": 1024,
        "xl": 1280
      },
      "collapse_rules": [],
      "hidden_on_small": [],
      "stack_on_small": []
    },
    "constraints": [],
    "seo_title": null,
    "seo_description": null
  },
  "data_ir": {
    "types": {},
    "state": {
      "isLoading": {
        "type": "boolean",
        "initial": false,
        "required": false,
        "constraints": {},
        "item_type": null
      },
      "error": {
        "type": "string",
        "initial": null,
        "required": false,
        "constraints": {},
        "item_type": null
      },
      "form_ands": {
        "type": "array",
        "initial": [],
        "required": false,
        "constraints": {},
        "item_type": "FormAnd"
      },
      "searchTerm": {
        "type": "string",
        "initial": "",
        "required": false,
        "constraints": {},
        "item_type": null
      },
      "currentPage": {
        "type": "number",
        "initial": 1,
        "required": false,
        "constraints": {},
        "item_type": null
      },
      "pageSize": {
        "type": "number",
        "initial": 20,
        "required": false,
        "constraints": {},
        "item_type": null
      }
    },
    "derived": {}
  },
  "data_fetch_ir": {
    "endpoints": {}
  },
  "data_model_ir": {
    "entities": {},
    "relationships": []
  },
  "behaviour_ir": {
    "events": {},
    "actions": {},
    "feedback": {}
  },
  "component_ir": {
    "library": "antd",
    "theme": {
      "primaryColor": null,
      "secondaryColor": null,
      "successColor": null,
      "warningColor": null,
      "errorColor": null,
      "fontFamily": null,
      "fontSize": null,
      "borderRadius": null
    },
    "components": {
      "pageContainer": {
        "type": "div",
        "label": "Page Container",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "style": {
            "padding": "24px"
          }
        },
        "dynamic_props": {},
        "styles": {},
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "pageHeader": {
        "type": "Typography.Title",
        "label": "Single Page Sample",
        "description": null,
        "bind": null,
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "level": 2,
          "children": "Single Page Sample"
        },
        "dynamic_props": {},
        "styles": {},
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "errorAlert": {
        "type": "Alert",
        "label": "Error",
        "description": null,
        "bind": "state.error",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "type": "error",
          "showIcon": true
        },
        "dynamic_props": {
          "message": "state.error"
        },
        "styles": {},
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": "state.error !== null",
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "searchInput": {
        "type": "Input.Search",
        "label": "Search",
        "description": null,
        "bind": "state.searchTerm",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "placeholder": "Search single page sample...",
          "allowClear": true
        },
        "dynamic_props": {},
        "styles": {},
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      },
      "dataTable": {
        "type": "Table",
        "label": "FormAnd Table",
        "description": null,
        "bind": "state.form_ands",
        "onClick": null,
        "onChange": null,
        "onSubmit": null,
        "onHover": null,
        "onKeyPress": null,
        "props": {
          "rowKey": "id",
          "pagination": {
            "showSizeChanger": true
          },
          "columns": [
            {
              "title": "ID",
              "dataIndex": "id",
              "key": "id"
            },
            {
              "title": "Name",
              "dataIndex": "name",
              "key": "name"
            }
          ]
        },
        "dynamic_props": {
          "loading": "state.isLoading",
          "dataSource": "state.form_ands"
        },
        "styles": {},
        "dynamic_styles": {},
        "class_name": null,
        "dynamic_class": null,
        "transitions": [],
        "visible_when": null,
        "disabled_when": null,
        "repeat": null,
        "slots": {},
        "a11y_role": null,
        "a11y_label": null
      }
    }
  },
  "layout_ir": {
    "root": "pageContainer",
    "children": {
      "pageContainer": [
        "pageHeader",
        "searchInput",
        "errorAlert",
        "dataTable"
      ]
    },
    "layout": {
      "pageContainer": {
        "type": "vertical",
        "gap": 16,
        "padding": "24px",
        "columns": null,
        "column_template": null,
        "row_template": null,
        "align_items": null,
        "justify_content": null,
        "wrap": false,
        "min_height": null,
        "overflow": null
      }
    },
    "layout_zones": [
      {
        "zone_id": "main",
        "component": "pageContainer",
        "anchor": "center",
        "size_hint": "full-width",
        "z_layer": "base",
        "notes": ""
      }
    ],
    "responsive_overrides": []
  },
  "navigation_ir": {
    "tabs": [],
    "modals": {},
    "drawers": {},
    "routes": [],
    "breadcrumb": null,
    "default_tab": null
  },
  "realtime_ir": {
    "timers": {},
    "polling": {}
  },
  "metadata": {
    "ir_version": "3.5",
    "generated_at": "",
    "source_prompt": null,
    "schema_session_id": null,
    "warnings": [
      "MINIMAL FALLBACK IR: generated after 3 failed LLM attempts. Contains essential endpoints and a basic UI skeleton."
    ]
  },
  "page_data_contract": null,
  "schema_ir": null
}
