/* global React */
function CodeBlock({ lang, code, t }) {
return (
{lang}
{code}
);
}
const PY_EXAMPLE = `import requests
r = requests.post(
"/predict",
json={
"latitude": 48.8566,
"longitude": 2.3522,
"altitude_km": 11.6
},
)
data = r.json()
print(f"Dose: {data['dose_usvh']} µSv/h ({data['risk_level']})")
`;
const CURL_EXAMPLE = `curl -X POST /predict \\
-H "Content-Type: application/json" \\
-d '{
"latitude": 48.8566,
"longitude": 2.3522,
"altitude_km": 11.6
}'
`;
const JSON_EXAMPLE = `{
"dose_usvh": 3.95,
"lower_bound": 3.48,
"upper_bound": 4.42,
"risk_level": "moderate",
"kp_current": 2.7,
"timestamp": "2026-05-09T14:23:00Z"
}
`;
function DocsPage({ t }) {
return (
<>
{t("docs_title")}
{t("docs_lead")}
POST
/predict
{t("docs_h_params")}
| {t("docs_th_field")} |
{t("docs_th_type")} |
{t("docs_th_desc")} |
latitude | float | {t("docs_p_lat")} |
longitude | float | {t("docs_p_lon")} |
altitude_km | float | {t("docs_p_alt")} |
{t("docs_h_response")}
| {t("docs_th_field")} |
{t("docs_th_type")} |
{t("docs_th_desc")} |
dose_usvh | float | {t("docs_r_dose")} |
lower_bound | float | {t("docs_r_low")} |
upper_bound | float | {t("docs_r_high")} |
risk_level | string | {t("docs_r_risk")} |
kp_current | float | {t("docs_r_kp")} |
timestamp | string | {t("docs_r_ts")} |
{t("docs_h_examples")}
{t("docs_github")}
→
>
);
}
window.DocsPage = DocsPage;