iOS development, Shown - not told.
ShowUI is an interactive learning app for iOS developers. Every concept has its own lesson. Every lesson has a live, tappable visual at the top. No slides. No passive reading. You tap, drag, toggle, and watch it happen in real time.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
57 lessons across 7 topics. Every one built to be felt, not just read.
| Topic | Lessons | Highlights |
|---|---|---|
| 🔀 Concurrency | 8 | Race conditions you can trigger, actors with a lock animation, live task cancellation |
| ✨ Animations | 17 | Springs, keyframes, phase animator, scroll effects, TimelineView particles, GeometryEffect |
| ⭐️ SF Symbols | 10 | Searchable browser with 300+ symbols, rendering modes, variable color, layer toggle |
| ⌨️ Keyboard | 6 | Every keyboard type, focus chaining, avoidance modes side by side |
| 🎭 Masking | 9 | Clip shapes, gradient fade, inverted mask, animated reveal, path mask |
| 🎨 Blend Modes | 7 | All 20 blend modes with live color picker and category breakdown |
| 🖱 Buttons | 10 | Loading states, toggle patterns, menus, haptics, custom styles, hit testing |
┌─────────────────────────────────┐
│ │
│ Interactive visual │ ← tap it, drag it, trigger it
│ (always at the top) │
│ │
├─────────────────────────────────┤
│ │
│ Plain-language explanation │ ← what's happening and why
│ │
├─────────────────────────────────┤
│ │
│ func path(in rect: CGRect) │ ← the actual Swift, no boilerplate
│ → Path { ... } │
│ │
└─────────────────────────────────┘
Every lesson follows this structure. The visual comes first you form an intuition before you read the explanation. The code at the bottom is copy paste ready.
ShowUI isn't just for beginners. The Animations topic covers KeyframeAnimator, GeometryEffect, TimelineView, DrawingGroup, and Transaction. APIs that most experienced developers haven't fully explored. The SF Symbols topic has a full searchable browser and covers variableValue:, layered rendering modes, and custom symbol import.
If you already know SwiftUI, you'll still find something new.
Found a bug? Have a topic idea? Open an issue or submit a pull request. If you can write a SwiftUI view, you can add a lesson.
This project is source available. See the LICENSE file for full details.








