chat_toolkit library
A comprehensive Flutter chat toolkit that provides customizable chat widgets and controllers for building chat interfaces.
This library follows Clean Architecture principles and SOLID design patterns to ensure maintainable and extensible chat functionality.
Example usage:
Chat(
chatController: ChatController(),
configuration: ChatConfiguration(
senderAlignment: ChatAlignment.end,
),
)
Classes
- BubbleConfiguration
- Configuration class for message bubble appearance and behavior.
- Chat
- A customizable chat widget that provides a complete chat interface.
- ChatConfiguration
- Main configuration class for chat appearance and behavior.
- ChatController
- Controller that manages chat state and behavior.
- FailedMessageEntry
- Entry for tracking failed message dispatch operations.
- Message
- Abstract base class representing a chat message.
- MessageBubble
- Widget that displays a message bubble with appropriate styling.
- MessageDispatchResult
- Result of a message dispatch operation.
- MessageElement
- Abstract base class for message content elements.
- MessageGroup
- A group of consecutive messages from the same sender.
- ReceiverMessage
- Represents an incoming message from another participant.
- SenderMessage
- Represents an outgoing message from the current user.
Enums
- ChatAlignment
- Alignment options for chat elements.
Typedefs
- CustomSortCallback = int Function(Message a, Message b)
- Custom sort callback for message sorting.
-
MessageDispatchCallback
= Future<
Message?> Function(Message) - Callback function type for message dispatch operations.