Skip to content

Qubic AI is an intelligent chatbot powered by Google Generative AI Gemini, featuring a user-friendly interface, efficient state management with Bloc, and local chat history storage with Hive.

Notifications You must be signed in to change notification settings

MAHMOUDELSAYED69/Qubic-AI

Repository files navigation

Qubic AI

Qubic AI

Qubic AI is your intelligent conversational partner, seamlessly blending the power of Google Generative AI Gemini with the elegance of Flutter. Whether you're seeking instant answers or engaging in deep, insightful dialogues, Qubic AI is designed to be your go-to AI assistant. The app delivers a smooth, intuitive chat interface, powered by Bloc for efficient state management, and a comprehensive history feature, backed by Hive for secure, local storage—allowing you to revisit and manage your past conversations effortlessly.

✨ Features

  • Conversational AI: Powered by Google Generative AI Gemini, providing accurate and context-aware responses.
  • Chat Interface: Modern, user-friendly chat screen for seamless interaction with the AI bot.
  • History Management: Effortlessly access and manage your past conversations, stored locally using Hive DB.
  • State-of-the-Art Architecture: Built with Bloc for scalable, efficient state management, and structured with the MVVM (Model-View-ViewModel) architecture for maintainable and testable code.

📱 Screenshots

Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4
Screenshot 5 Screenshot 6 Screenshot 7

🚀 Getting Started

To get started with Qubic AI, 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/Qubic-AI.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.

  • 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 Qubic AI app and running on your device. If you encounter any issues during installation, please refer to the Flutter documentation.

🛠 Dependencies

  • bloc: Business logic component to manage state efficiently.
  • flutter_bloc: Bloc integration with Flutter, simplifying UI binding.
  • google_generative_ai: Interface with Google Generative AI Gemini for powerful AI-driven responses.
  • hive: Lightweight and fast key-value database for Flutter.
  • hive_flutter: Adapter for Hive, integrating seamlessly with Flutter.
  • flutter_dotenv: Manage environment variables using a .env file.
  • flutter_screenutil: Screen adaptation for responsive design across devices.
  • formatted_text: Rich text formatting package.
  • get_it: Dependency injection and service locator for easy app configuration.
  • intl: Internationalization support.
  • loading_indicator: Visually appealing loading animations.

Dev Dependencies

  • build_runner: Code generation tool for Flutter and Dart.
  • hive_generator: Hive Type Adapter generator for custom data types.
  • flutter_launcher_icons: Easily generate app icons for Android and iOS.
  • flutter_lints: Linting rules for maintaining high code quality.

🚀 Usage

  1. Launching the App
  • Open Qubic AI on your device to start interacting with the AI.
  1. Starting a Conversation
  • On the Chat Screen, type your question or message in the input field at the bottom.
  • Press the send button to initiate the conversation with Qubic AI.
  • The AI will respond with context-aware answers powered by Google Generative AI Gemini.
  1. Creating a New Chat
  • To start a new conversation, tap the "Create New Chat" button located next to the input field.
  • This will clear the current chat and allow you to engage with the AI afresh.
  1. Accessing Chat History
  • Navigate to the History Screen by selecting the history icon from the menu.
  • View a list of all your past conversations, stored locally using Hive DB. You can:
  • Continue a Conversation: Tap on any previous chat to resume the discussion with the AI.
  • Delete a Chat: Swipe left on any chat entry to delete it from your history if you no longer need it.

Enjoy using Note Studio to keep your notes organized and easily accessible!

📄 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