Skip to content

GChat is a real-time chat application that allows friends and family to have a text-based conversation in real time.

License

Notifications You must be signed in to change notification settings

johnwillz-ux/gchat

Repository files navigation

G-Chat

G-Chat is a Flutter-based chat application that allows users to sign up, sign in, and chat with other users. It uses Firebase for authentication and real-time database operations.

Table of Contents

Setup Instructions

Prerequisites

Clone the Repository

Install Dependencies

flutter pub get

Configure Firebase

Android:

  • Place the google-services.json file in the android/app directory.
  • Ensure you have the correct dependencies in your android/build.gradle and android/app/build.gradle files.

iOS:

  • Place the GoogleService-Info.plist file in the ios/Runner directory.
  • Make sure your ios/Podfile contains the necessary Firebase dependencies.

Deployment Steps

Running the App

  • To run the app in development mode, use:
  • flutter run

Building the App

  • for Android
  • flutter build apk

For iOS:

  • flutter build ios

For Web:

  • flutter build web

Features

  • User Authentication (Sign Up, Sign In, Sign Out)
  • Real-time Chat
  • User Profiles
  • Dark Mode Support
  • Pull-to-Refresh for Chat List

Folder Structure

Here’s a brief overview of the folder structure:

  • lib/
    • common/ - Common widgets and utilities
    • constants/ - Constant values and styles
    • models/ - Data models
    • providers/ - State management providers
    • services/ - Firebase and other service integrations
    • views/ - Application views/screens
    • widgets/ - Reusable widgets
  • assets/ - Asset files such as images
  • android/ - Android platform-specific code
  • ios/ - iOS platform-specific code

License

This project is licensed under the MIT License

About

GChat is a real-time chat application that allows friends and family to have a text-based conversation in real time.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published