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

LibraryScreensReadiness

Screen · Health

Readiness

Daily scores on a rail of tilted cards, paged by a half-circle tick dial you turn.

A score carousel for health and tracking apps: cards on a perspective rail tilt away from the centre as you swipe, each a colour block with a two-tone title, a giant light percentage and a drawn arc, while a half-circle dial of fine ticks underneath scrubs through the days with a detent per day.

SwiftUIiOS 17.0+readiness-carousel

Get Swift Pieces Pro

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

01

What's included

SwiftUI source you own, built on Apple frameworks only.

  • Cards tilt and scale on a perspective rail as they leave the centre
  • A half-circle tick dial that turns through days with a detent and haptic per tick
  • Counting percentages and arcs that redraw when the day changes
  • VoiceOver adjustable actions for both the rail and the dial
  • The Readiness screen from the preview, ready to adapt

In the Build Kit

Frost (style), Health and Fitness (brief), Daily Health (recipe). Your agent builds around this screen in the same design.

Used in

Sleep App (template)

02

Implementation notes

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

The rail pages one card at a time. The centre card faces you; its neighbours turn about the vertical axis, shrink and darken as they leave the centre, and the screen edges crop them, so the rail reads as a row of objects rather than a list. Each card is one solid block: a two-tone title, a giant light percentage with a superscript unit, a thin circle with the score drawn as an arc, and one line that loops once as it crosses it, which is the score's last seven days. Under the rail, a half circle of fine radial ticks turns through the last fourteen days. The accent tick at twelve o'clock stays put while the ruler turns under it, each day clicks into place with a haptic, and every card's figure rolls to the new day as it passes.

Notes

  • Give ReadinessCarousel(days:selection:) a day per entry, each with the same scores in the same order, and bind selection to the day index. Scores pick their colour by block, an index into blocks, so a score keeps its block from day to day.
  • The rail is a native paging ScrollView with scrollTransition, so momentum, rubber banding and scroll-position binding behave like any iOS rail. initialCard centres a card on appear; start on the second one so neighbours show on both sides.
  • ReadinessDial stands on its own. Dragging sideways turns it with a detent per step, a flick carries on to where it would land, and past either end the ruler still moves but less and less. Pass progress instead and it becomes a meter that fills its ticks left to right, which is how Drift pairs a ring.
  • ReadinessLoopArt is the card's circle, arc and line, reusable in widgets and details. The line morphs between days instead of jumping.
  • Both controls are adjustable for VoiceOver: the rail steps through scores and reads each one ("Sleep Quality, 86 percent. 7h 32m asleep"), the dial steps through days, and the prev and next buttons inside the dial are the non-gesture path.
  • Reduce Motion flattens the rail (no tilt, only a slight scale) and turns springs into short eases.
  • ReadinessCarouselExample at the end of ReadinessCarousel.swift is the screen shown in the preview, with round floating buttons in place of a tab bar and a score detail with contributors as capsule bars. Copy it as a starting point.

03

Keep building

Pieces that work well next to this one.

Screen · Health

Sleep

Last night as a stepped stage timeline you scrub, with stage totals as capsule bars.

Screen · Health

Workout

Concentric activity rings that fill on appear, over a week strip you can scrub.

Template · Health

Sleep App

Drift, a sleep and recovery companion for a smart ring: a complete Xcode project with pairing, daily readiness, sleep stages, trends, widgets and three brand presets.