HNBuddy is an Hackernews client for iOS written in Swift.
The idea came from a combination of will to build an actual, finished, usable application (in opposition to the personal, side projects that I’m used to abandon as soon as their teaching/learning purpose is achieved) and the will to experiment with and learn Swift and iOS programming through a real project.
Modularity
To enhance the modularity and the testability of the app, I broke down some of its functionalities into separate modules:
- The whole network/client part was developed separately into the HNScraper module.
- The UI of the user page is based on a HeaderTabScrollView
- The comment section uses the SwiftComments module.
- The app also uses the SwiftyMercuryReady component to display the articles. This allow the user to enhance the readability of the article and to have control over the font size & style and the theme (dark & light).
Landing page
The app has its landing page hosted on github. It’s also available on the app store.
The result has become my default way to browse hackernews.