All open-source packages
ArchitectureSwift

iOSAppTemplates

21 SwiftUI app templates for iOS 18, each a tested Swift package you can copy under your own name

25StarsLatest Release: v3.1.0Updated: October 15, 2026
Platforms:iOS 18macOS 14

License: MIT

Twenty-one SwiftUI app templates, from e-commerce and finance to messaging and travel. Each template is a standalone Swift package with an XcodeGen host app that uses SwiftUI and Foundation only. Twenty of them are tab-based apps with in-memory sample data and a @MainActor store covered by a Swift Testing suite; CleanArchitectureApp splits Domain, Data and Presentation into separate targets and adds an HTTP layer, an in-process sample server and an offline cache, with tests for each layer. The create-ios-app command copies a template and renames its package, module, types, host project and bundle identifier, and refuses names that would clash with names the template already uses.

Features

  • 21 templates: 20 app types (AI assistant, booking, CRM, e-commerce, finance, fitness, messaging, travel and more) plus a layered CleanArchitectureApp
  • Tested state: in twenty templates, state and actions live in a @MainActor store with a Swift Testing suite; CleanArchitectureApp has 108 tests across four test targets
  • No third-party dependencies in the templates; they run without an account, an API key or network access
  • create-ios-app renames a template and refuses names that would clash with names it already has (ScaffoldError.nameConflict)
  • CleanArchitectureApp: Domain, Data and Presentation as separate targets, so the compiler enforces the dependency rule; HTTP layer, in-process sample server, offline cache
  • CI tests every template in the iOS Simulator as its own job, scaffolds and tests a generated project, and builds the QuickStart example
  • Light and dark screenshots of every template, taken in the simulator by a script in the repository

Quickstart

swift
1import EcommerceApp
2 
3@main
4enum QuickStartApp {
5 static func main() {
6 EcommerceAppShell.main()
7 }
8}

Installation

Get the templates

sh
1git clone https://github.com/muhittincamdali/iOSAppTemplates.git

create-ios-app

bash
1cd iOSAppTemplates
2swift run create-ios-app list
3swift run create-ios-app new MyShop --template ecommerce --output ~/Developer

TemplateScaffold library (Swift Package Manager)

swift
1dependencies: [
2 .package(url: "https://github.com/muhittincamdali/iOSAppTemplates.git", from: "3.0.0")
3],
4targets: [
5 .executableTarget(name: "YourTool", dependencies: [
6 .product(name: "TemplateScaffold", package: "iOSAppTemplates")
7 ])
8]

Screenshots

E-commerce template, Shop tab, light appearance
Clean Architecture template, team directory, light appearance
Clean Architecture template, team directory, dark appearance
Personal Finance template, light appearance
Messaging template, dark appearance
Travel Planner template, dark appearance

Timeline

  1. Repository opened with three template packages (EcommerceApp, FitnessApp, SocialMediaApp); most of the first month's commits were documentation, and v2.0.0 was published on 17 August

  2. Seventeen more template packages added under Templates/, bringing the count to twenty; v2.1.0 tagged on 26 April

  3. Proof scripts removed and App Store metadata and an interactive mode added to the old create-ios-app; CI's template generator smoke check was red and the template tests were placeholders

  4. Rebuilt as 3.0.0: twenty tested templates, a rewritten create-ios-app and the TemplateScaffold library; the root package, which no longer built with Swift 6.4, was reduced to the tool and its library, and about 82,000 lines of unused code were removed (PR #22)

  5. 3.1.0: CleanArchitectureApp added as the 21st template, rewritten from ios-clean-architecture-template, which was archived (PR #23)

Links

Merged Repositories

Related Article

Read the article