Back to Portfolio
Cumulus App Icon

Cumulus

Evolving a SwiftUI Weather App Through Four Major Versions

4 Major Versions
iOS · iPadOS
macOS · watchOS
Platform Support
WeatherKit Data Source
App Store Published Product

Cumulus is a weather application built using SwiftUI and WeatherKit. Originally created as a learning project, it evolved over multiple years into a fully featured weather platform supporting iPhone, iPad, widgets, custom app icons, and a significantly expanded weather data experience.


The project demonstrates iterative product development, platform expansion, UI redesign, and long-term maintenance.

Version 1.0 Icon
Version 1.0

Initial Release

Goal

Create a simple weather application using SwiftUI and WeatherKit.

Features

  • Current weather conditions
  • Multi-city support
  • Wind information
  • Humidity information
  • Dynamic backgrounds
  • Light and dark mode support

Design

The initial design focused on simplicity. Large glassmorphic cards presented only the most important information: current temperature, conditions, wind, humidity, wind direction, and feels like temperature.

Challenges

As a first release, the focus was proving the technical concept rather than building a feature-rich product.

Version 1.0 - California
California Weather View
Version 1.0 - Madrid
Madrid Weather View
Version 1.0 - Bristol
Bristol Weather View
Version 1.5 Icon
Version 1.5

Personalisation Update

Goal

Allow users to customise the appearance of the application.

New Features

  • Alternate app icons
  • User customisation options
  • Home screen widgets

Why It Mattered

This update was small technically but important from a product perspective. Rather than only focusing on new functionality, it introduced personalisation and allowed users to make the app feel more their own.

Purple Custom Icon
Purple Theme
Dark Custom Icon
Dark Theme
Cat Custom Icon
Cat Icon
Dog Custom Icon
Dog Icon
Bear Custom Icon
Bear Icon
Version 2.0 Icon
Version 2.0

Expanding to iPad

Goal

Bring the application to larger screens.

Major Addition

  • Full iPad support

Design Changes

The original iPhone layout was completely rethought for tablet devices. New widgets included sunrise, sunset, visibility, precipitation, pressure, UV index, multi-day forecasts, and hourly forecasts.

Technical Challenges

Building for iPad required responsive SwiftUI layouts, adaptive sizing, flexible spacing systems, and support for multiple orientations.

Outcome: Cumulus evolved from a simple phone application into a cross-device weather platform.

Version 2.0 - iPad California
iPad View - California
Version 2.0 - iPad Sydney
iPad View - Sydney
Version 3.0 Icon
Version 3.0

Complete UI Overhaul

Goal

Modernise the entire user experience.

Why a Redesign Was Needed

While Version 2 was feature rich, the interface was becoming difficult to scale. Adding more weather information required a more flexible design system.

Major Changes

  • New navigation structure
  • Dedicated search experience
  • Settings screen
  • Improved weather views
  • Better information hierarchy
  • Redesigned visual language

Search Experience

A completely new search workflow was introduced with recent searches, current location shortcuts, and cleaner location management.

Design Evolution

Version 3 introduced stronger typography, better spacing, more consistent card design, and improved visual hierarchy.

This marked the transition from: "A weather app built by a developer" to "A weather product designed for users."

Version 3.0 - Search
New Search Interface
Version 3.0 - London
London Weather View
Version 3.0 - Sydney
Sydney Weather View
Version 4.0 Icon
Version 4.0

Refinement & Product Maturity

Goal

Polish every part of the experience.

Unlike Version 3, which focused on redesigning everything, Version 4 focused on refinement and depth.

New Features

  • Detailed hourly forecasts
  • 10-day forecast view
  • Dew point tracking
  • Cloud cover information
  • Wind gust data
  • Improved UV presentation
  • Enhanced pressure visualisation
  • Sunrise and sunset visualisation
  • Richer weather analytics

Interface Improvements

  • Improved spacing
  • Better card organisation
  • Enhanced readability
  • More efficient information density
  • Improved accessibility
  • Cleaner navigation

App Icon Redesign

Version 4 introduced a completely redesigned icon. Compared with the original cloud logo, the new icon better reflects weather conditions, uses stronger visual depth, creates a more recognisable brand identity, and feels more aligned with modern iOS design.

Version 4.0 - Screenshot 1
Enhanced Weather Details
Version 4.0 - Screenshot 2
10-Day Forecast
Version 4.0 - Screenshot 3
Advanced Weather Data

About Cumulus Development

Cumulus began as a personal learning project to explore SwiftUI and WeatherKit, but grew into a comprehensive case study in iterative product development. Each version addressed specific user needs while maintaining technical quality and design consistency. The project demonstrates end-to-end ownership, from initial concept through multiple major releases, showcasing the ability to evolve a product based on user feedback and platform capabilities.

Results

Across four major versions, Cumulus evolved from a simple weather viewer into a comprehensive weather platform.

Technical

  • SwiftUI
  • WeatherKit
  • WidgetKit
  • Adaptive layouts
  • State management
  • App Store deployment

Product

  • User-centred design
  • Feature prioritisation
  • Long-term maintenance
  • Cross-device experiences
  • Visual design systems

Business

  • App Store publishing
  • App branding
  • User retention through iterative updates
  • Product lifecycle management
SwiftUI WeatherKit WidgetKit CoreLocation App Store Connect
Back to Portfolio