NeoJSON is an elegant and efficient standalone Smalltalk framework to read and write JSON converting to or from Smalltalk objects.
MIT Licensed.
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.
http://www.json.org https://en.wikipedia.org/wiki/JSON
You can load NeoJSON using Metacello
Metacello new repository: 'github://svenvc/NeoJSON/repository'; baseline: 'NeoJSON'; load.
Gofer new package: 'GsUpgrader-Core'; url: 'http://ss3.gemtalksystems.com/ss/gsUpgrader'; load. (Smalltalk at: #GsUpgrader) upgradeGLASS1. Metacello new baseline: 'NeoJSON'; repository: 'github://GsDevKit/NeoJSON:gs_master/repository'; load.
You can use the following dependency from your own Metacello configuration or baseline
spec baseline: 'NeoJSON' with: [ spec repository: 'github://svenvc/NeoJSON/repository' ].