{
  "tool_id": "run_training_paces_calculator",
  "slug": "run-training-paces-calculator",
  "path": "/run-training-paces-calculator/",
  "mode": "engine_module",
  "usage": "Client-side calculator. Open https://aifithub.io/run-training-paces-calculator/ and fill in the inputs; results render in-browser. Also importable as ES module from https://aifithub.io/engines/run-training-paces-calculator.js — call compute(input) with the JSON shape below.",
  "methodology": "https://aifithub.io/methodology/run-training-paces-calculator/",
  "sample_input": {
    "tool": "run_training_paces_calculator",
    "distance": "5k",
    "race_time_minutes": 25,
    "race_time_seconds": 0
  },
  "input_schema": {
    "type": "object",
    "properties": {
      "tool": {
        "type": "string"
      },
      "distance": {
        "type": "string"
      },
      "race_time_minutes": {
        "type": "number"
      },
      "race_time_seconds": {
        "type": "number"
      }
    },
    "required": [
      "tool",
      "distance",
      "race_time_minutes",
      "race_time_seconds"
    ]
  },
  "output_schema": {
    "type": "object",
    "properties": {
      "vdot": {
        "type": "number",
        "description": "Effective aerobic fitness index (Daniels VDOT)"
      },
      "inputRaceDistanceMeters": {
        "type": "number"
      },
      "inputRaceTimeSeconds": {
        "type": "number"
      },
      "inputPacePerKmSeconds": {
        "type": "number"
      },
      "zones": {
        "type": "array",
        "description": "Training pace zones (E, M, T, I, R)",
        "items": {
          "type": "object",
          "properties": {
            "zone": {
              "type": "string"
            },
            "label": {
              "type": "string"
            },
            "description": {
              "type": "string"
            },
            "pacePerKmSeconds": {
              "type": "number"
            },
            "pacePerMileSeconds": {
              "type": "number"
            },
            "effortPercent": {
              "type": "number"
            }
          }
        }
      },
      "equivalentRaceTimes": {
        "type": "array",
        "description": "Predicted race times at equivalent fitness for standard distances",
        "items": {
          "type": "object",
          "properties": {
            "distance": {
              "type": "string"
            },
            "distanceMeters": {
              "type": "number"
            },
            "predictedSeconds": {
              "type": "number"
            }
          }
        }
      }
    }
  }
}
