iOS 13 & Swift 5: Chat App With Firestore | MVVM
4.6 (105 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
504 students enrolled

iOS 13 & Swift 5: Chat App With Firestore | MVVM

Real Time Chat App with Cloud Firestore & Swift 5
4.6 (105 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
504 students enrolled
Created by Stephan Dowless
Last updated 3/2020
English
English [Auto]
Current price: $139.99 Original price: $199.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 9 hours on-demand video
  • 2 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • How to build a real time message iOS application
  • How to user Cloud Firestore as a backend
  • How to implement the Model View ViewModel (MVVM) architecture
  • Advanced auto-layout and programmatic UI skills with Swift
  • Register and authenticate users using Firebase
  • Advanced UI/UX development to build a clean and visually appearing user interface
  • Advanced UITableView and UICollectionView skills
  • Advanced Swift techniques and architecture patterns
  • How to build a user profile
Course content
Expand all 42 lectures 08:48:55
+ Login & Sign Up User Interface & ViewModels
8 lectures 01:53:24
Setup Login Screen & Intro to AutoLayout
15:56
Login Screen UI
13:01
Login Screen UI Continued
13:32
Input Container View Code Refactor
17:10
Finish Login Screen UI
07:38
Sign Up Screen UI
11:35
Login View Model & Form Validation
13:38
Selecting Profile Image & Sign Up Form Validation
20:54
+ Setting Up Firestore & User Authentication
6 lectures 01:27:58
Setup Firebase
14:08
Create A User
22:15
Keeping A User Logged In
09:55
Logging A User In
07:24
API Code Refactor
17:38
Progress HUD & Error Handling
16:38
+ Fetching Users From Firestore
6 lectures 01:01:05
Setup NewMessageController
08:42
Setup TableView & Navigation Bar
09:47
UserCell UI
10:18
User Data Model & Fetching User Info From Firestore
09:09
Initializing User Object
15:38
Populate TableView With Users
07:31
+ Setting Up ChatController & Sending Test Messages
5 lectures 01:13:45
Setting Up ChatController
16:15
Custom Input Accessory View For Sending Messages
19:58
Setting Up Message Cells
12:47
Sending Test Messages & MessageViewModel
15:22
Finishing Up MessageViewModel
09:23
+ Sending & Receiving Messages From Firestore
5 lectures 01:07:37
Message Model & Upload Message To Firestore
14:43
Fetching Messages From Firestore
14:41
Dynamic Cell Sizing & Finishing ChatController
07:42
Upload & Fetch Conversations
14:38
Populate TableView With Conversations
15:53
+ User Profile
5 lectures 58:57
User Profile UI
16:13
Populate Header With User Data
07:00
Profile View Model
14:34
Setup Logout Button
08:39
Action Handlers For Profile Options
12:31
+ Finishing Touches
4 lectures 44:52
Searching For Users
13:36
Bug Fixes
16:20
Duplicate Messages Bug Fix
06:14
Show Error Messages To User
08:42
Requirements
  • Basic knowledge of Swift and Xcode is preferred
  • A Mac computer
Description

What are we building?

In this course, you will learn how to build a real time chat application using Firestore and Swift, ready to be published on the App Store. Throughout the process, you will develop high level programming, app design and app development skills.  We will be building this without the use of storyboards, fully programmatically.


Why take this course? 

Learning advanced development skills should be taught using real world examples. This course will teach you how to build a fully functional messaging app, that's completely ready to integrate into any one of your iOS Applications. You will be learning advanced front and backend development skills, from a real life professional developer. You will learn how to code like a pro, writing clean, scalable and maintainable code.  This also makes for a great project to add to your portfolio, which you can use to show off to potential employers if you're trying to become a pro.


Prior Experience? 

Some programming and basic Xcode experience is preferred. The course will move a little fast if you're a complete beginner, but you will pick things up along the way.


What will you learn? 

  • How to build a fully functioning messaging interface 

  • Comprehensive knowledge and understanding of Swift 5 & Xcode 11

  • How to Implement Model View ViewModel (MVVM) architecture

  • Advanced level programming and app development skills

  • Advanced level User Interface Design

  • Advanced level back end engineering

  • How to authenticate and register users with Firebase

  • How to communicate with a database (read/write)

  • How to monitor events in a database

  • How to upload images to Firebase

  • How to structure data for optimum performance

  • How to programmatically construct views and controllers

  • How to parse incoming JSON data from database

  • How to use CocoaTouch classes, UIKit, UserNotifications and more 

  • How to use CocoaPods and custom third party APIs 

  • How to implement/use protocols 

  • How to implement custom subclasses for clean and reusable code

  • How to dynamically size collection view cells

  • How to create extensions and functions for clean and reusable code

Who this course is for:
  • Upper level beginner to intermediate