The client is a Master Detail application called
RepositoryBrowser. This sets up a template that can be used on a large device with a split view controller, or a navigator view controller on a small device. In addition, actions to add entries are created.
To build the APIs necessary to display content, several utility classes are needed:
URITemplateclass processes URI templates with a set of key/value pairs
Threadsclass allows functions to be run in the background or in the main thread
NSURLExtensionsclass provides easy parsing JSON objects from a URL
DictionaryExtensionsclass provides a means of creating a Swift dictionary from a JSON object
GitHubAPIclass provides access to the GitHub remote API ...