This Swift project, created using UIKit, serves as a practical example of integrating various technologies and concepts into a chat application. Through this project, you will learn how to use CocoaPods to incorporate the CLTypingLabel library, as well as how to use Swift Package Manager (SPM) to install the Firebase SDK and IQKeyboardManagerSwift. You will also gain insight into configuring the AppDelegate, managing the view lifecycle with viewWillAppear
and viewWillDisappear
methods, integrating Firebase for authentication and user registration, and creating different chat views based on the logged-in user.
- User-friendly welcome and registration screens.
- Real-time chat functionality.
- Seamless integration with Firebase for authentication and data storage.
- Dynamic chat interface with different views based on user credentials.
Before you begin, ensure you have met the following requirements:
- Xcode (version 15.0 or higher)
- Swift (version 5.0)
- CocoaPods
- Swift Package Manager (SPM)
-
Clone the repository:
git clone https://github.com/luuanfaria/flash-chat-iOS13.git
-
Install dependencies using CocoaPods:
cd flash-chat-iOS13 pod install
-
Open the project in Xcode:
open flash-chat-iOS13.xcworkspace
-
Install Firebase SDK and IQKeyboardManagerSwift via SPM:
- In Xcode, navigate to File > Swift Packages > Add Package Dependency...
- Enter the Firebase and IQKeyboardManagerSwift repository URLs and follow the prompts to install them.
-
Configure Firebase in your AppDelegate by following Firebase setup instructions.
-
Build and run the project in Xcode.
-
On the welcome screen, users can log in if they have an existing account or register for a new one.
-
After logging in or registering, users will be directed to the chat interface.
-
The chat interface varies based on the user's credentials, providing different views and functionality.
-
Users can start chatting and enjoy the real-time chat experience.
If you have any questions or suggestions, feel free to contact me:
- Website: luuanfaria.dev
- LinkedIn: linkedin.com/in/luuanfaria
- Twitter: twitter.com/luuanfariaf
This project is part of The App Brewery's Complete App Development Bootcamp. For a comprehensive app development learning experience, check out the full course at www.appbrewery.co.