The Chat App (SwiftUI)

This chat app will introduce you to working with the Address Book, Firestore database queries, storing images and more!

What You'll Learn

  • SMS Authentication

    You'll learn how to use Firebase Phone authentication. This allows users to create an account by sending an SMS message to their phone.

  • Real Time Chat

    You'll learn how to establish a real time connection to your database so you can receive data as it is posted. This is essential for a chat or message app!

  • Address Book

    You'll learn how to request for permission and access the user's Address Book so that you can retrieve contact details.

  • Firebase Storage

    You'll learn how to upload and retrieve images from Firebase Storage. This will enable users to set profile images and post images to chat!

  • Firestore Database

    You'll learn how to structure the database while considering the scenarios that we need to query.

  • Custom Designed UI

    This app will feature a UI from our designer and you'll learn the design side of the app as well as how to translate it to code in Xcode.

Course curriculum

    1. Before You Start This Course

    2. Resources

    1. Lesson 1: Introduction

    2. Lesson 2: Plugins

    3. Lesson 3: Setting Requirements

    4. Lesson 4: Wireframing

    5. Lesson 5: UI Design - Color, Typography, Illustrations

    6. Lesson 6: UI Design - Creating the Onboarding Experience

    7. Lesson 7: UI Design - Designing the Chat List

    8. Lesson 8: UI Design - Designing the Chat UI

    9. Lesson 9: UI Design - Designing the Contact List

    10. Lesson 10: Bonus Challenge

    1. Lesson 1: Introduction

    2. Lesson 2: Setting up the Xcode Project

    3. Lesson 3: Overview of the App Architecture

    4. Lesson 4: Creating a Custom Tab Bar

    5. Lesson 5: Setting Up the Firebase Project

    6. Lesson 6: Building the UI for the onboarding sequence

    7. Lesson 7: Fetching the User's Contacts

    8. Lesson 8: Uploading the Profile Image

    9. Lesson 9: Firebase Phone Authentication

    10. Lesson 10: Securing the Database

    11. Lesson 11: Creating the Contacts List View

    12. Lesson 12: Building the Contacts Row

    13. Lesson 13: Building the Conversation UI

    14. Lesson 14: Chat Data in the Database

    15. Lesson 15: Chat Data Database Operations

    16. Lesson 16: Dynamic Conversation and Chat List

    17. Lesson 17: Dynamic Conversation and Chat List (Part 2)

    18. Lesson 18: Styling the Chat List

    19. Lesson 19: Real Time Chatting

    20. Lesson 20: Cleaning Up Bugs

    21. Lesson 21: Photos in Chat

    22. Lesson 22: New Chat Message UI

    23. Lesson 23: New Chat Message Functionality

    24. Lesson 24: Group Chat Functionality

    25. Lesson 25: Group Chat Functionality (Part II)

    26. Lesson 26: Settings View

    27. Lesson 27: Dark Mode

    28. Lesson 28: Delete Account

    29. Lesson 29: Handling Deleted Users

    30. Lesson 30: Bug Fixing (Part I)

    31. Lesson 31: Bug Fixing (Part II)

About this course

  • Free
  • 43 lessons
  • 18 hours of video content