Swift PiecesPro
  • Library
    Screens48Finished, designed screens for real apps.Templates10Complete apps built from the screens.Build Kit24Styles, briefs and recipes for your coding agentEverything58The whole library, with search
  • Docs
  • Pro

Library

  • Screens48
  • Templates10
  • Build Kit24
  • Everything58
  • Docs
  • Pro
  • Account
Get Swift Pieces ProFree library ↗
Swift PiecesPro

Production-ready SwiftUI screens and app templates for iOS. The pieces to build the whole app.

Library

  • Screens
  • Templates
  • Build Kit
  • Everything

Product

  • Pro
  • Your account
  • Sign in

Resources

  • Docs
  • CLI
  • MCP and agents
  • Free library

Social

  • X / Twitter
  • GitHub

SWIFTPIECES PRO

© 2026 Swift Pieces. One payment, lifetime access, per-developer commercial license.

Curated withby Saivion

LibraryTemplatesWeather App

Template · Weather

Weather App

Almanac, a weather app set like a printed page: a complete Xcode project with an hour-by-hour forecast, a dot-matrix radar, saved places, alerts, widgets and three brand presets.

A weather app on four tabs. First run asks for location, units and places to follow before a StoreKit 2 paywall for minute-by-minute radar. Today scrubs the next 24 hours on a ruled tape over a ten-day table; Radar plays the next two hours as a dot matrix; Places lists saved cities; Settings holds units, alerts and the subscription.

SwiftUIiOS 17.0+Xcode project 1.0.0weather-app

Get Swift Pieces Pro

$199 once, every piece included. See how installing works · Sign in

01

What's inside

The screens this template wires together, in the order someone meets them.

First run

Location, units, places to follow and severe weather alerts, then the StoreKit 2 paywall. Runs once, then records completion.

Screen · Commerce

Purchase

A complete StoreKit 2 purchase: plans load, the purchase runs, success lands, the app unlocks.

Tabs

Today, Radar, Places and Settings. Today is the Forecast tape; Radar is the dot matrix.

Screen · Weather

Forecast

A giant tabular reading you scrub hour by hour on a ruled tape, over a ten-day range table.

Screen · Weather

Radar

A dot-matrix map that plays the next two hours, with a time slider and legend blocks.

Screen · Account

Settings

A settings home with a collapsing profile header, grouped rows, toggles and sign out.

02

What's included

SwiftUI source you own, built on Apple frameworks only.

  • The next 24 hours on a ruled tape you scrub
  • A ten-day table of range bars on one scale
  • A dot-matrix radar that plays the next two hours
  • Saved places with live readings, reorder and search
  • Conditions and Hourly widgets
  • Three presets: Press, Sol and Neon

Includes

Forecast, Radar, Settings, Purchase, Paywall. Installed together, automatically.

Requires

In-App Purchase capability

03

Implementation notes

How it behaves, what it handles, and the decisions behind it.

WeatherApp is one root view. On first launch it asks where to report on: your location, or a designed "not now" path that picks a city from a ruled list. Then it sets your units and hands off to the Purchase screen's StoreKit 2 paywall. Closing, purchasing or restoring finishes first run and records it under a completion key, so the root switches to the app on its own.

The app sits under a floating ruled bar with four destinations. Today is the Forecast screen under a newspaper masthead: the hour under the indicator as a giant tabular figure, the next 24 hours on a tape of hairline ticks you scrub while the sun or moon travels its arc, and a ten-day table of range bars on one shared scale. Radar is the Radar screen's dot matrix playing the next two hours over a drawn coast. Places lists followed cities as ruled rows, with reorder, swipe to unfollow and each city's forecast page. Settings holds units, warnings, the subscription and "Start over" back to first run.

Adapting it

  • Forecasts: AlmanacSample draws believable sample weather from a few numbers per city. Conform a type to ForecastRepository (WeatherKit, or your provider's API) and pass it as forecasts.
  • Radar: the sample plays DotRadarSample.frames over its drawn coast. Map your provider's radar to [RadarFrame] grids and your coast to land polygons.
  • Products: pass your App Store Connect ids as productIDs. Until they exist, the paywall shows its designed "plans didn't load" state and its close button still finishes first run.
  • Location: add NSLocationWhenInUseUsageDescription to Info.plist, then reverse-geocode the fix in WeatherFirstRun.useLocation.
  • Theme: everything follows the theme you set on WeatherApp. Without a brand it wears Almanac Press; SPBrandTheme(.almanacSol) or .almanacNeon re-skin every page, and softer brands lift the ruled cells onto cards.

The Xcode project

The download is a complete project on Tuist: sample weather for thirty cities behind a ForecastRepository protocol, with hours eased from three-hourly readings, sunrise and sunset from latitude, UV, wind and warnings; SwiftData places in an App Group with search, reorder and unfollow; a full first run with units, places to follow and severe weather warnings; Almanac Plus with radar every five minutes and a fifteen-day outlook; a warnings ticker and a morning briefing; Conditions and Hourly widgets; three presets; unit tests and a first-run UI test.

Notes

  • Not @main: put WeatherApp() in your own WindowGroup.
  • Enable the In-App Purchase capability before testing purchases.
  • Previews ship with the file: first run, home, and home in each Almanac preset.

04

Keep building

Pieces that work well next to this one.

Screen · Weather

Forecast

A giant tabular reading you scrub hour by hour on a ruled tape, over a ten-day range table.

Screen · Weather

Radar

A dot-matrix map that plays the next two hours, with a time slider and legend blocks.

Template · Travel

Travel App

Wayfare, a trip planning and booking app: a complete Xcode project with guides, a map of nearby places, day-by-day itineraries, stay booking, widgets and three brand presets.