Skip to content

HiBorn4/crmapp

Repository files navigation

CRM Flutter App – Chat Module

A Flutter-based CRM mobile application designed to streamline communication between clients, agents, and sales teams via a robust chat system. This chat module supports real-time messaging, Firebase integration, and an intuitive UI built with responsiveness and performance in mind.


✨ Features

  • 🔐 Secure Login

    • Firebase Authentication (Email/Password & Phone OTP)
    • Google Sign-In (optional)
  • 💬 Real-Time Chat

    • One-to-one chat between client and CRM agent
    • Typing indicator, message status, timestamps
  • 📁 Media Support

    • Image, PDF, and file attachments in chat
  • 🧠 Assistant Integration (Optional)

    • Supports AI-based assistant interaction via backend or OpenAI
  • 📦 Firebase Integration

    • Firestore for chat messages and user metadata
    • Firebase Storage for media uploads
    • FCM (optional) for push notifications
  • 📱 Responsive UI

    • Adaptive layouts for all screen sizes
    • Clean and modern UI components using GetX

🛠️ Tech Stack

Layer Technology
UI/Frontend Flutter 3.x
State Management GetX
Backend Firebase (Firestore + Storage)
Auth Firebase Auth
AI Assistant (Optional) OpenAI API / FastAPI

📁 Folder Structure

lib/
├── main.dart
├── app/
│   ├── modules/
│   │   ├── chat/
│   │   │   ├── chat_binding.dart
│   │   │   ├── chat_controller.dart
│   │   │   ├── chat_screen.dart
│   │   │   └── widgets/
│   │   │       ├── message_bubble.dart
│   │   │       ├── chat_input_field.dart
│   │   │       └── file_preview.dart
│   ├── data/
│   │   ├── models/
│   │   │   ├── user_model.dart
│   │   │   ├── message_model.dart
│   │   └── services/
│   │       ├── firebase_service.dart
│   │       ├── storage_service.dart
│   │       └── chat_service.dart
│   └── routes/
│       └── app_pages.dart

⚙️ Setup Instructions

🔧 Prerequisites

  • Flutter SDK 3.x
  • Firebase Project
  • Android/iOS device or emulator

🧪 Firebase Setup

  1. Go to Firebase Console
  2. Create a new project
  3. Add Android/iOS apps
  4. Download google-services.json and/or GoogleService-Info.plist
  5. Enable Firestore, Firebase Auth, and Storage

📦 Install Dependencies

flutter pub get

▶️ Run the App

flutter run

🔐 Authentication Flow

  • User logs in via email/phone
  • User metadata is stored in Firestore
  • User is routed to the chat dashboard

🧠 AI Assistant (Optional)

  • Integrate OpenAI’s GPT model (via API) for assistant responses

  • Backend support via FastAPI (LLM chains) for:

    • Auto-reply
    • Document-based query handling
    • CRM data enrichment

📈 Future Enhancements

  • Group chat support
  • Admin panel (Flutter Web or Firebase Console)
  • Voice notes and video attachments
  • CRM-specific workflows: lead assignment, ticket tracking

🤝 Contributing

Contributions are welcome! Fork the repo, create a feature branch, and submit a PR.


📄 License

MIT


🧩 Maintainer

Developed and maintained by Hi Born


---

Let me know if you'd like to add:

- App screenshots / demo GIFs
- Links to backend or other modules
- Firebase rules for chat
- Chatroom design docs or architecture diagram

I can also generate `firebase_rules.json`, `.firebaserc`, and other supporting files.

About

A Flutter-based CRM mobile application designed to streamline communication between clients, agents, and sales teams via a robust chat system. This chat module supports real-time messaging, Firebase integration, and an intuitive UI built with responsiveness and performance in mind.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages