NeoJSON is an elegant and efficient standalone Smalltalk framework to read and write JSON converting to or from Smalltalk objects.
A chapter in the Enterprise Pharo book is a good introduction to NeoJSON.
Go ahead and read the NeoJSON paper.
Basically, NeoJSONWriter is used to write a JSON representation of Smalltalk objects to a textual stream. Similary, NeoJSONReader is used to parse a JSON representation from a textual stream into Smalltalk objects.
You can load NeoJSON using Metacello
Metacello new repository: 'github://svenvc/NeoJSON/repository'; baseline: 'NeoJSON'; load.
You can use the following dependency from your own Metacello configuration or baseline
spec baseline: 'NeoJSON' with: [ spec repository: 'github://svenvc/NeoJSON/repository' ].