Passion Project

GeekWeather 2

About the App

GeekWeather 2 is a redesign from the 2017 original. It is much faster than the previous version, supports multiple location weather lookup, system wide dark mode, and many more new features!

Design Philosophy

The goal is to create an aesthetically pleasing, minimalistic user interface, that effectively display important information, without the noise of less-important information.


The app is designed natively in Swift and UIKit. There are five major components that make-up the app and are updated with the publisher subscriber pattern. The data is fetched using URLSessions from the Dark Sky API

Third-Party Libraries

The only third-party library used in the app is Lottie from Airbnb. The animations are provided by a contributer from LottieFiles.

Learning Experience

The modular design and the publisher-subscriber paradigm made it easy to create new components if needed to display more data and is easily updated by sending the appropriate object and ID to the subscriber, without keeping or maintaining references.

Developed and Designed by Cyril