MaGus
Standardized iOS project setup with a Swift CLI that generates full Xcode project structures in minutes.
Overview
Built MaGus to give teams a repeatable way to bootstrap iOS projects with consistent architecture and tooling from day one.
Problem
Starting a new iOS codebase repeatedly meant rebuilding the same scaffolding, configuration, and folder conventions, which slowed delivery and created inconsistent project quality.
Constraints
- Needed to support different team conventions and architecture preferences
- Had to generate production-ready project structure, not just a sample app
- Had to keep setup simple enough for fast onboarding
Approach
Created a Swift CLI that collects project inputs, applies templates, and outputs a full Xcode-ready structure with sensible defaults. Focused on composability so teams can extend the generated structure over time.
Key Decisions
Use a template-driven generator instead of a static starter repo
A generator scales better across teams and project types, and it keeps new projects aligned without constant manual cleanup.
- Maintain a single starter repository
- Rely on manual project setup checklists
Build the tool in Swift
Using Swift reduced context switching for iOS teams and made it easier to maintain and extend the CLI with familiar language patterns.
Tech Stack
- Swift
- Swift Argument Parser
- Xcode
- YAML
Result & Impact
- From hours to minutesSetup Time
- Standardized structure across new projectsConsistency
MaGus improved onboarding and reduced project drift by giving teams a clean, repeatable baseline before writing feature code.
Learnings
- Project bootstrap tools are most useful when they are opinionated but still extensible
- Small DX improvements compound quickly across a full team