Best way to read recipes data with commands?

Hi! I would like to translate, on runtime, recipes into a nbt-readable data, so I can use them in commands. Any idea? I only thought about using a crafter and memoizing them, but it just feels slow and tricky.
Continue to help post