A template to jumpstart your next iOS project integrating best practices and tools
Clone or download
pgorzelany Merge pull request #1 from WedgeSparda/master
Adding missing warning flags
Latest commit 934cc71 Jan 13, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
hooks Small improvement for postgen text Sep 12, 2018
{{cookiecutter.app_name}} Added XCode 10 recommended warning flags to project.pbxproj Jan 9, 2019
LICENSE initial commit Sep 9, 2018
Readme.md Updated readme Jan 7, 2019
cookiecutter.json initial commit Sep 9, 2018

Readme.md

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.

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.