Project is an iOS app. Code follows Raywenderlich style guide. Lint are used before sending pull request. SwiftLint autocorrect is used.
Thrid party framewoks and libraries are managed using Cocoapods dependency manager.
- iOS 14.0+
- Xcode 12
- Build Number willl increased for each iTunes Connect submission
- App version will only increase on app submiting to App Store
- Each version will have build number starting from 1000
-
Each
Module
Will have its own folder. eg -- Splash
- Onboarding
- Profile
-
Constants, Generic View, Data Model, Helper etc each will have its own folder
-
SupportingFiles
folder will have- Bridging-Header.h
- Frameworks (Folder for 3rd paty code which does not have Cocoapods)
- AppDelegate.swift
- LaunchScreen.storyboard
- Info.plist
-
This project will follow GitFlow version control workflow convections
-
dev
will be the semi-stable branch withtag
on each stable merge. This is the branch from where IPA should be published to iTunes Test Flight -
master
will have code that are fully stable withrelease
on each merge. App store publishing should be done from this branch only.
- Setup Fastlane Contineous Integration & Deployment
- Setup Google Analytics