This iOS news app makes gets its news by making networking requests from the hacker news Algolia API. It parses the JSON gotten back into a Swift object and displays the news titles in a list view on the first page. I make use of a navigation link to enable the news titles to be tapped by the user; when tapped, they are taken to a page that displays the contents of the article’s URL using WebKit’s WKWebView.
The most difficult part of this project was getting the Swift data containing the news information from my network manager to the list view in the content view so they could be shown on the screen. The solution was to implement the observer design pattern and make the network manager conform to the observable object protocol: this way, its properties could be made public and be accessed in the content view.