This is a implementation of the JSON specification according to RFC 4627. You can think of it as a low fat alternative to XML, if you want to store data to disk or transmit it over a network rather than use a verbose markup language. The JSON generator escapes all non-ASCII an control characters with \uXXXX escape sequences and supports UTF-16 surrogate pairs in order to be able to generate the whole range of Unicode code points. This means that generated JSON text is encoded as UTF-8 (because ASCII is a subset of UTF-8) and at the same time avoids decoding problems for receiving endpoints that don't expect UTF-8 encoded texts. This package is a pure Ruby variant that relies on the iconv and the stringscan extensions, which are both part of the Ruby standard library.