{
  "app_name": "BMI Calculator",
  "pages": [
    {
      "page_id": "bmi_calculator",
      "page_title": "BMI Calculator",
      "route_path": "/",
      "route_params": [],
      "image_indices": [],
      "description": "Single-page BMI Calculator application containing all functionality. The page is divided into several sections: (1) BMI Input Form at the top with a unit system toggle (Metric/Imperial radio buttons or toggle switch, defaulting to Metric), height input field (cm for metric, feet/inches for imperial with appropriate labels, placeholders, and validation), weight input field (kg for metric, lbs for imperial), a prominent 'Calculate BMI' button (disabled when inputs are invalid), and a 'Clear/Reset' button to reset the form. (2) BMI Result Display section that appears after calculation showing the BMI value in large text rounded to 1 decimal place, the category name color-coded (Underweight: #3498db blue, Normal: #2ecc71 green, Overweight: #f39c12 orange, Obese: #e74c3c red), a visual BMI scale/gauge indicator showing where the result falls, health information text for the category, and a disclaimer about consulting healthcare professionals. (3) Calculation History section displayed below the result showing a list of past calculations in reverse chronological order (newest first), each entry displaying timestamp, height with unit, weight with unit, BMI result, and category with color indicator. Includes a 'Clear History' button that triggers a confirmation dialog/modal before deleting all history entries. Shows an empty state message when no history exists. Limited to displaying last 20 calculations. (4) BMI Information section (collapsible accordion or card) explaining the BMI formula, a table of BMI category ranges with color codes, limitations of BMI as a health metric, and measurement guidelines. Real-time input validation with error messages is shown inline. All calculations are performed client-side. History is persisted in localStorage.",
      "navigates_to": []
    }
  ],
  "shared_state": [
    {
      "key": "unitSystem",
      "type": "'metric' | 'imperial'",
      "initial_value": "'metric'",
      "description": "The currently selected unit system for height and weight inputs, persists during session"
    },
    {
      "key": "calculationHistory",
      "type": "Array<{ id: string; height: number; weight: number; heightUnit: string; weightUnit: string; bmiValue: number; bmiCategory: string; timestamp: string }>",
      "initial_value": "[]",
      "description": "List of all BMI calculations performed during the session, persisted in localStorage"
    }
  ],
  "default_route": "bmi_calculator",
  "design_system": {
    "theme_mode": "light",
    "density": "comfortable",
    "color_primary": "#2ecc71",
    "color_success": "#2ecc71",
    "color_warning": "#f39c12",
    "color_error": "#e74c3c",
    "color_bg_container": "#ffffff",
    "color_bg_layout": "#f0f4f8",
    "color_text": "#2c3e50",
    "color_border": "#dce1e6",
    "font_family": "Inter, -apple-system, sans-serif",
    "font_size_base": 14,
    "border_radius": 8,
    "component_overrides": {}
  }
}
