Welcome to the Baby Monitor project. It's an application made for monitoring babies, which can help parents take care of their children. Application works similar to this product: https://www.philips.ie/c-p/SCD620_05/avent-baby-monitor-digital-video-baby-monitor
- Ania Pinderak - Project Manager
- Anna-Mariia Shkarlinska - iOS Developer
- Rafał Żurawski - QA
- Tools:
- Services:
-
Clone repository:
# over https: git clone https://github.com/netguru/baby-monitor-client-ios.git # or over SSH: git clone [email protected]:netguru/baby-monitor-client-ios.git
-
Install required Gems:
bundle install
-
Run Carthage:
carthage bootstrap --platform iOS --cache-builds
-
IMPORTANT: Open terminal and prevent saving changes being made to
GoogleService-Info.plist
: Enter plists folder
cd "Baby Monitor/Supporting Files/Firebase"
and start ignoring changes made to the files in there
git update-index --assume-unchanged $(git ls-files | tr '\n' ' ')
- For Developers from Netguru:
Download from project's vault:
.env
file into the project's root directoryGoogleService-Info-Development
,GoogleService-Info-Staging
,GoogleService-Info-Production.plist
files to the location:Baby Monitor/Supporting Files/Firebase/
In case of the lack of an access:
For a full integration please configure your own application in Firebase, download and paste plist
s from there as well as a key to .env
.
-
Install pods through Bundler:
bundle exec pod install
-
Open
Baby Monitor.xcworkspace
file and build the project.
-
Respect Swift API Design Guidelines
-
The code must be readable and self-explanatory - full variable names, meaningful methods, etc.
-
Don't leave any commented-out code.
-
Write documentation for every method and property accessible outside the class. For example well documented method looks as follows:
for Swift:
/// Tells the magician to perform a given trick. /// /// - Parameter trick: The magic trick to perform. /// - Returns: Whether the magician succeeded in performing the magic trick. func perform(magicTrick trick: MagicTrick) -> Bool { // body }
- Use helper methods from
UIView+AutoLayout.swift
- Examples:
addSubview(view)
view.addConstraints {[
$0.equalConstant(.height, 36), // sets height to 36
$0.equalConstant(.width, 285), // sets width to 285
$0.equal(.centerX), // attaches centerXAnchor to superView centerXAnchor
$0.equalTo(topView, .top, .bottom, constant: 80) // attaches views topAnchor to topView bottom anchor with offset 80
]}