explaingit

soapyigu/swift-30-projects

8,294SwiftAudience · developerComplexity · 2/5Setup · moderate

TLDR

A collection of 30 small, standalone iOS apps written in Swift 5 covering UIKit, animation, Core ML, Core Data, and more, designed as well-structured self-study examples for developers learning iOS development.

Mindmap

mindmap
  root((swift-30-projects))
    What it does
      30 standalone apps
      Self-study material
      Swift 5 compatible
    Tech Stack
      Swift
      UIKit
      Core ML
      Core Data
    Topics Covered
      Animation
      Maps and Contacts
      Notifications
      Grid and List Views
    Audience
      iOS learners
      Swift beginners
      Junior developers
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Learn iOS development by exploring 30 standalone apps covering real topics like animation, maps, and machine learning.

USE CASE 2

Use as reference code when building UIKit components such as table views, collection views, or Today widgets.

USE CASE 3

Study on-device machine learning by examining the Core ML integration example.

USE CASE 4

Follow test-driven development patterns using XCTest in a well-structured Swift codebase.

Tech stack

SwiftUIKitCore MLCore DataCore AnimationMapKitXCTestiOS

Getting it running

Difficulty · moderate Time to first run · 30min

Requires Xcode, each of the 30 apps is a separate project that must be opened and run individually.

In plain English

Swift 30 Projects is a collection of 30 small iOS apps written in Swift, intended as self-study material for developers learning iOS development. Each mini-app is a standalone project with its own README file and screenshots. The repository has been updated to Swift 5 and is compatible with the iPhone X screen layout. The apps span a broad range of iOS topics. Some are focused on basic UIKit components (the building blocks of iOS screens), while others cover more involved areas: scrolling lists, table views, and grid layouts using UICollectionView, animation using both Core Animation and UIView transitions, local notifications in iOS 11, maps and contacts via MapKit and the Contacts framework, on-device machine learning with Core ML, Core Data for storing information locally, and the Today Extension for widget functionality. The collection also includes examples using popular open-source libraries, common design patterns, and test-driven development with XCTest. The author is an iOS developer who emphasizes that these are not simple tutorial copies. Each project has been rebuilt with attention to code style and architecture. The code follows the raywenderlich.com Swift Style Guide, a widely referenced standard in the iOS community. The README is short, but each of the 30 individual apps has its own documentation. If you are learning Swift and iOS development, this repo gives you a set of working, well-structured examples across many of the areas you will encounter in real app development.

Copy-paste prompts

Prompt 1
Using swift-30-projects as a reference, show me how to implement a UICollectionView grid layout in Swift 5 following good code style.
Prompt 2
Write a Swift Core Data model for storing user preferences locally in an iOS app, similar to the style used in swift-30-projects.
Prompt 3
How do I add a Today Extension widget to my iOS app? Give me a working Swift example.
Prompt 4
Create a Core Animation transition between two view controllers in Swift 5, inspired by the animation projects in swift-30-projects.
Prompt 5
Generate an XCTest unit test for a Swift class that parses a local JSON file and returns a list of model objects.
Open on GitHub → Explain another repo

← soapyigu on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.