TypstDocumentation

json

Read structured data from a JSON file.

The file must contain a valid JSON object or array. JSON objects will be converted into Typst dictionaries, and JSON arrays will be converted into Typst arrays. Strings and booleans will be converted into the Typst equivalents, null will be converted into none, and numbers will be converted to floats or integers depending on whether they are whole numbers.

The function returns a dictionary or an array, depending on the JSON file.

The JSON files in the example contain objects with the keys temperature, unit, and weather.

Example

#let forecast(day) = block[
  #box(square(
    width: 2cm,
    inset: 8pt,
    fill: if day.weather == "sunny" {
      yellow
    } else {
      aqua
    },
    align(
      bottom + right,
      strong(day.weather),
    ),
  ))
  #h(6pt)
  #set text(22pt, baseline: -8pt)
  #day.temperature °#day.unit
]

#forecast(json("monday.json"))
#forecast(json("tuesday.json"))
Preview

Parameters
Question mark

path
string
RequiredPositional
Question mark

Path to a JSON file.