JSON is simultaneously straightforward and tricky.

It is wonderfully straightforward:

https://www.json.org/json-en.html

But it can also be tricky - take a look at these edge cases, undefined behaviors, and implementation incompatibilities:

http://seriot.ch/parsing_json.php

(That’s a true labor of love - reminds me of these classic browser compatibility tables.)