Check out the documentation over at the corresponding Docs-ComponentMarkup website.
Render Minecraft-components in a data-driven fashion, supported by a DSL with expressive power.