/iOS-project-template

A template to jumpstart your next iOS project integrating best practices and tools

Primary LanguageSwiftMIT LicenseMIT

iOS Project Template

A template to jumpstart your next iOS project integrating best practices and tools. Supports Xcode 10, Swift 4.2

Motivation

When working for early stage startups I frequently had to start new projects from scratch. While doing this I noticed that I am spending a lot of time doing basic project setup and integrating basic tools and best practices in all projects from scratch.

This template should save project setup time and also provide a common foundation that each team member will be accustomed to so that you don't have to think and explore the project structure and foundations. They will always be the same.

For a more in-depth writeup of the motivation and project, check out my blog post.

Contains (best practices)

Prerequisites:

This project needs Cookiecutter

brew install cookiecutter

Usage

The project uses Cookiecutter for project templating. To create a new project from this template just run:

cookiecutter https://github.com/pgorzelany/iOS-project-template.git

You will get a prompt to give a new app name. Thats it, you should have a new folder with your new app created based on this template!

The project is using cocoapods for managing external libraries and a Gemfile for managing the cocoapods version. To install the cocoapod dependencies do the following:

Get Bundler

sudo gem install bundler

To install the specific cocoapods version run

bundle install

Then install the pods

bundle exec pod install

Additional configuration

You will have to manually configure the bundle id of the main target and test target.