Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
Default iOS project configuration patterns

iOS Project Template

  1. Install .ruby-version
  2. Install gemfile with pods dependency
  3. Install CocoaPods for dependency management
  4. Install Kiwi pod for unit tests
  5. Install objection pod for IoC
  6. Install KIF pod for acceptance specs
  7. Reorganize file structure; groups match file system folders, split out groups based on features or roles
  8. Define views in nib files by default; designer editable, easier auto-layout configuration, easier localization
  9. Define view controller flows in storyboards but extract controller views into separate nibs
  10. Setup CI to run tests, several options here including TeamCity and cloud services but no clear winner yet
  11. Setup CI to publish OtA Ad Hoc builds; host directly from CI as a build artifact or via a service (HockeyApp is working well for Thumbtack, Testflight and other options also exist)
  12. Setup CI to run code quality metrics; objective-clean enforces code style, OCLint runs static analysis, XcodeCoverage for code coverage. Still evaluating value of these tools.
  13. If using CoreData install mogenerator to manage model classes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment