SwiftUI Fundamentals

Practice Projects & Setup Guide

January 10, 2026
3 min read
Featured image for blog post: Practice Projects & Setup Guide

Ready to practice? Here's how to set up and explore the iOS-Practice projects.

All code is on GitHub: iOS-Practice

Getting the Code

git clone https://github.com/christopherkmoore/iOS-Practice
cd iOS-Practice

Project Structure

iOS-Practice/
├── ConcurrencyBugHunt/
│   ├── Exercises/
│   │   ├── GCD/
│   │   ├── AsyncAwait/
│   │   └── Combine/
│   └── ConcurrencyBugHunt.xcodeproj
├── TestabilityWorkshop/
│   ├── Exercises/
│   │   ├── DependencyInjection/
│   │   ├── SideEffects/
│   │   ├── Architecture/
│   │   └── Async/
│   ├── TestabilityWorkshopTests/
│   └── TestabilityWorkshop.xcodeproj
└── SwiftUIBuilder/
    ├── Exercises/
    │   ├── List/
    │   ├── Grid/
    │   ├── Navigation/
    │   └── State/
    └── SwiftUIBuilder.xcodeproj

Opening Projects

Each project is standalone:

# Concurrency exercises
open ConcurrencyBugHunt/ConcurrencyBugHunt.xcodeproj

# Testing exercises
open TestabilityWorkshop/TestabilityWorkshop.xcodeproj

# SwiftUI exercises
open SwiftUIBuilder/SwiftUIBuilder.xcodeproj

Exercise Structure

Each exercise file includes:

  1. Requirements - What you need to build
  2. Starter code - The buggy or incomplete implementation
  3. Comments - Hints about what to fix
  4. Preview - Instant feedback in Canvas

Running Tests

In TestabilityWorkshop:

# Run all tests
cmd + U

# Or from command line
xcodebuild test -project TestabilityWorkshop.xcodeproj -scheme TestabilityWorkshop

Tips for Practice

  1. Read the requirements before looking at the code
  2. Try to fix/implement before checking the blog post
  3. Run the app to see the bug in action
  4. Write tests to verify your fix
  5. Compare your solution to the blog post

Requirements

  • Xcode 15+
  • iOS 17+ deployment target
  • macOS Sonoma recommended

Questions?

Open an issue on GitHub or reach out on Twitter.

Originally published on pixelper.com

© 2026 Christopher Moore / Dead Pixel Studio

Let's work together

Professional discovery, design, and complete technical coverage for your ideas

Get in touch