Skip to content

Chat Stream is a real-time chat app built with Flutter and Firebase, offering secure communication, profile management, and robust authentication features.

Notifications You must be signed in to change notification settings

MAHMOUDELSAYED69/Chat-Stream

Repository files navigation

Chat Stream

Chat Stream is a powerful real-time chat application built using Flutter and Firebase. Chat Stream enables seamless communication with friends, making it easy to stay connected. This app not only facilitates real-time chatting but also offers comprehensive profile management and robust authentication features. Users can easily register, log in, and reset their passwords. The application ensures secure and smooth user interactions with options to update profile information.

Features

  1. Authentication:
  • Login: Secure user login with email and password.
  • Register: New user registration with name, email and password.
  • Forgot Password: Reset password via email.
  • Logout: Log out from the application.
  • Delete Account: Permanently delete user account.
  1. Chatting:
  • Real-time Chat: Communicate with friends in real-time.
  1. Profile Management:
  • Update Name: Change your display name.
  • Reset Password: Update your account password.
  1. User Interface:
  • Animated Splash Screen: Welcome screen with animated text.
  • Responsive Design: Adapts to different screen sizes.

Screenshots

Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4 Screenshot 5 Screenshot 6 Screenshot 7 Screenshot 8 Screenshot 9 Screenshot 10 Screenshot 11 Screenshot 12

Installation

To get started with Chat Stream, follow these steps:

Step 1: Clone the Repository First, you'll need to clone the repository from GitHub. Open your terminal and run the following command:

https://github.com/MAHMOUDELSAYED69/Chat-Stream.git

Replace with the actual URL of your repository if it was changed.

Step 2: Install Dependencies After navigating to the project directory, you need to install all the necessary dependencies. Run:

flutter pub get

This command fetches all the dependencies listed in the pubspec.yaml file.

Step 3: Configure the App Ensure all necessary configurations are done. This includes adding your assets and setting up environment variables if needed. Verify that your pubspec.yaml file includes all required assets and fonts.

Step 4: Run the Application Finally, run the application on your desired device using the following command: `

flutter run

This command compiles your Flutter app and deploys it to the connected device or simulator.

Additional Tips Updating Dependencies: If there are any updates to the dependencies, you can update them using:

flutter pub upgrade --major-versions

Flutter Doctor: Run flutter doctor to ensure that your development environment is set up correctly.

flutter doctor

This command checks your environment and displays a report of the status of your Flutter installation, dependencies, and connected devices.

By following these steps, you'll have the Chat Stream app and running on your device. If you encounter any issues during installation, please refer to the Flutter documentation.

Dependencies

Chat Stream uses the following packages:

  • animated_text_kit: Provides animated text widgets.
  • bloc: State management library.
  • cloud_firestore: Firebase Firestore for database operations.
  • cupertino_icons: iOS style icons.
  • firebase_auth: Firebase Authentication for user management.
  • firebase_core: Core functionalities of Firebase.
  • flutter: Flutter framework.
  • flutter_bloc: Flutter bindings for bloc library.
  • flutter_screenutil: Utilizes screen size and pixel density to adapt UI layout.
  • meta: Provides annotations for static analysis.
  • modal_progress_hud_nsn: Modal progress indicator HUD.
  • shared_preferences: Persistent storage for simple data.

Usage

  1. Register: Open the app and create a new account by providing your email and password.
  2. Verify Email: After registering, verify your email address by following the link sent to your email.
  3. Login: Log in with your registered email and password.
  4. Chat: Start chatting with your friends in real-time. Send and receive messages instantly.
  5. Manage Profile: Go to the profile section to update your display name.
  6. Reset Password: Use the forgot password option if you need to reset your password.
  7. Logout: Log out from your account securely.
  8. Delete Account: Permanently delete your account if needed.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

For any questions or feedback, please reach out via email: gcfjxvkj@gmail.com