q_chat_bot 1.0.5 copy "q_chat_bot: ^1.0.5" to clipboard
q_chat_bot: ^1.0.5 copied to clipboard

A customizable Flutter chatbot package with support for user and bot messages, rich UI elements, and suggestion handling for seamless interactions.

QBot #

A customizable and easy-to-use chatbot widget for Flutter apps. With q_chat_bot, you can quickly integrate a chatbot that responds to user input based on predefined keywords and responses. Fully customizable UI, including bot and user message styles, icons, and background colors.

Demo #

QBotDemo

Features #

  • Customizable chat bubbles for both user and bot.
  • Support for bot and user avatars.
  • Automatic response generation based on user input.
  • Support for customizable welcome messages and typing indicators.
  • Easy to integrate with any Flutter app.

Getting started #

To add q_chat_bot to your Flutter project, open your pubspec.yaml file and add it to your dependencies:

dependencies:
  q_chat_bot: ^1.0.0

Usage #

First, You need to customize the QBot

QBotConfig config = QBotConfig(
      // Required arguments
      txtFieldPadding: EdgeInsets.fromLTRB(8, 8, 0, 8),
      msgController: msgController,
      hintText: 'Type / for suggestions.',
      welcomeMsg: 'Hi, I\'m Q-Bot. How can I assest you?',
      botIcon: Icon(Icons.android, color: Colors.white),
      botMsgBgColor: Colors.green,
      userIcon: Icon(Icons.person, color: Colors.white),
      userMsgBgColor: Colors.blue,
      paddingBetweenMsgs: 8.0,
      keywords: ['Hello', 'What are you', 'thanks'],
      responses: [
        'Hi, How can I help you?',
        'I\'m QBot, I\'m here to answer your questions about this app.',
        'You are welcome.',
      ],
      // Optional arguments
      bgColor: Colors.black87,
      txtFiledDecoration: InputDecoration(
        hintText: 'Type / for suggestions.',
        hintStyle: TextStyle(color: Colors.grey),
        border: OutlineInputBorder(
          borderRadius: BorderRadius.circular(15),
        ),
      ),
      sendIcon: Icon(Icons.send_rounded, color: Colors.blue),
      msgStyle: TextStyle(color: Colors.white),
      divider: SizedBox(),
      typing: SizedBox(
        height: 50,
        width: 50,
        child: Lottie.asset('assets/typing.json'),
      ),
      delay: 2,
      msgTime: Padding(
        padding: const EdgeInsets.symmetric(horizontal: 0.0),
        child: Text(
          DateFormat('dd/MM/yyyy hh:mm a').format(DateTime.now()),
          style: TextStyle(color: Colors.blueGrey),
        ),
      ),
    );

Then just use it like this:

QBot(config: config)

Testing #

To run the tests for this package, use:

flutter test

This will run all the unit tests to ensure everything is working correctly.

License #

This package is open source and available under the MIT License.

Contributions #

Feel free to open an issue or pull request if you find a bug or want to add a new feature! Contributions are always welcome.

11
likes
150
points
13
downloads

Publisher

unverified uploader

Weekly Downloads

A customizable Flutter chatbot package with support for user and bot messages, rich UI elements, and suggestion handling for seamless interactions.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

flutter

More

Packages that depend on q_chat_bot