Introduction
In this app, users can generate a random fact about a number by tapping a button or shaking their device. Facts can also be shared with others using the iOS share sheet.
The idea for this app originated while I was creating a repository of iOS code snippets for reference during development. While building a snippet for parsing a JSON feed, I identified it as a potential foundation for a simple iOS application. I then continued development with the goal of publishing it on the App Store.
How was it built?
This app was created using Numbers API. In the code, I retrieve the JSON feed using JSONDecoder and parse it into a struct conforming to the Codable protocol.
The app was built to support iOS 12 and iOS 13. These versions together run on 91% of all iOS devices. (As measured by the App Store on October 15, 2019.)
The gradient background is created using a CAGradientLayer, which is applied to a UIView and cycles through an array of predefined gradient colours. When the generate button is tapped or the device is shaken, a CABasicAnimation transitions to the next colour in the sequence.
Future Updates
Features to be added in future updates include:
- Landscape orientation support
- Updated share sheet text that includes app URL to app store listing
- Native iPad support
- Notifications
- iOS 14 Widget














