Skip to content

Command overview

All swiftspawn commands grouped by purpose.

swiftspawn has four families of commands: lifecycle (managing the project itself), generate (creating code), recipe (multi-step generation), and quality (lint/format).

Every generator accepts these common flags:

FlagEffect
--dry-runPrint what would change; write nothing.
--forceOverwrite existing files instead of failing.
--quietSuppress non-error output.
--verbosePrint detailed operation logs.
--with-testsWhere applicable: also emit a matching test file.
CommandPurpose
newCreate a new iOS app at ./<AppName>/.
syncResolve SPM dependencies and refresh CLI-managed regenerable files.
doctorCheck the local environment for prerequisites.
openOpen the current project’s .xcodeproj in Xcode.
versionPrint the CLI version.
upgradeUpdate swiftspawn to the latest version, building from source.
CommandPurpose
generate featureCreate a feature folder, optionally with screens and a service.
generate screenCreate a screen (View + ViewModel) and auto-wire its route + navigation.
generate viewCreate a standalone SwiftUI view (no ViewModel).
generate modelCreate a Codable model, optionally inferred from JSON.
generate serviceCreate a service trio (protocol + impl + mock) and register it in DI.
generate routeAdd a case to Route.swift.
generate apiGenerate a typed API client from an OpenAPI 3.0+ spec.
CommandPurpose
recipe crudScaffold a full CRUD pattern: model + 5-method service + 3 screens.
recipe listList available recipes.
CommandPurpose
lintRun SwiftLint with the project’s .swiftlint.yml.
formatRun SwiftFormat.

Some flags accept a bare-keyword form for readability:

Terminal window
swiftspawn generate screen MovieList on Movies --uses MovieService
swiftspawn generate view MoviePoster in Movies
swiftspawn generate model Genre in Movies

These are equivalent to --on Movies and --in Movies respectively. Both forms work everywhere those flags appear.