Skillquality 0.46

cometchat-android-v6-kotlin-components

CometChat Android UIKit v6 Kotlin Views component catalog — all custom View chat UI components, their properties, styles, and usage

Price
free
Protocol
skill
Verified
no

What it does

Companion skills: cometchat-android-v6-compose-components (Compose equivalent), cometchat-android-v6-kotlin-theming, cometchat-android-v6-kotlin-customization, cometchat-android-v6-kotlin-placement

Purpose

Complete catalog of all Kotlin Views components in CometChat UIKit v6. Each component is a custom View class in com.cometchat.uikit.kotlin.presentation.

Use this skill when

  • Adding a CometChat Views component to an Activity or Fragment
  • Looking up component properties and methods
  • Understanding which component to use for a specific chat feature
  • Finding the style class for a component

Do not use this skill when

  • Working with Compose components (use cometchat-android-v6-compose-components)
  • Customizing bubble rendering (use cometchat-android-v6-kotlin-customization)
  • Placing components in navigation (use cometchat-android-v6-kotlin-placement)

1. Component Catalog

1.1 List Components

ComponentPackageTypePurpose
CometChatConversationspresentation.conversations.uiViewRecent conversations list
CometChatUserspresentation.users.uiViewUser list
CometChatGroupspresentation.groups.uiViewGroup list
CometChatGroupMemberspresentation.groupmembers.uiViewMembers of a group
CometChatCallLogspresentation.calllogs.uiViewCall history

1.2 Messaging Components

ComponentPackageTypePurpose
CometChatMessageListpresentation.messagelist.uiViewMessage list with bubbles
CometChatMessageComposerpresentation.messagecomposer.uiViewMessage input with attachments
CometChatMessageHeaderpresentation.messageheader.uiViewChat header (name, status, actions)
CometChatMessageInformationpresentation.messageinformation.uiViewMessage delivery/read info
CometChatThreadHeaderpresentation.threadheader.uiViewThread parent message header

1.3 Call Components

ComponentPackageTypePurpose
CometChatCallButtonspresentation.callbuttonsViewAudio/video call buttons
CometChatIncomingCallpresentation.incomingcallViewIncoming call screen
CometChatOutgoingCallpresentation.outgoingcallViewOutgoing call screen
CometChatOngoingCallpresentation.ongoingcall.uiViewActive call screen
CometChatCallActivitycallsActivityActivity wrapper for calls

1.4 Utility Components

ComponentPackageTypePurpose
CometChatSearchpresentation.search.uiViewGlobal search
CometChatReactionListpresentation.reactionlist.uiViewReaction details
CometChatEmojiKeyboardpresentation.emojikeyboard.uiViewEmoji picker
CometChatStickerKeyboardpresentation.stickerkeyboard.uiViewSticker picker
CometChatFlagMessageDialogpresentation.reportDialogReport/flag message

1.5 Shared Elements

Located in presentation.shared/:

  • AI features: aiconversationstarter/, aiconversationsummary/, aismartreplies/
  • Base elements: baseelements/
  • Message bubble: messagebubble/ (BubbleFactory, CometChatMessageBubble, InternalContentRenderer)
  • Dialog: dialog/
  • Media: mediarecorder/, mediaselection/, mediaviewer/, inlineaudiorecorder/
  • Message preview: messagepreview/
  • Moderation: moderation/
  • Permissions: permission/
  • Popup menu: popupmenu/
  • Reactions: reaction/
  • Receipts: receipts/
  • Search box: searchbox/
  • Shimmer: shimmer/
  • Status indicator: statusindicator/
  • Suggestion list: suggestionlist/
  • Toolbar: toolbar/
  • Typing indicator: typingindicator/

1.6 Adapters

List components use RecyclerView adapters:

AdapterComponent
ConversationsAdapterCometChatConversations
MessageAdapterCometChatMessageList
Group/User adapters in respective packagesCometChatGroups, CometChatUsers

2. Basic Usage Examples

2.1 Conversations List in an Activity

import com.cometchat.uikit.kotlin.presentation.conversations.ui.CometChatConversations

class ConversationsActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        val conversations = CometChatConversations(this)
        conversations.setOnItemClick { conversation ->
            // Navigate to chat
        }
        setContentView(conversations)
    }
}

2.2 Message List in XML Layout

<com.cometchat.uikit.kotlin.presentation.messagelist.ui.CometChatMessageList
    android:id="@+id/messageList"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1" />
val messageList = findViewById<CometChatMessageList>(R.id.messageList)
messageList.setUser(user)

2.3 Users List

val users = CometChatUsers(this)
users.setOnItemClick { user ->
    // Navigate to chat with user
}
setContentView(users)

2.4 Full Chat Screen

class MessagesActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_messages)

        val header = findViewById<CometChatMessageHeader>(R.id.messageHeader)
        val messageList = findViewById<CometChatMessageList>(R.id.messageList)
        val composer = findViewById<CometChatMessageComposer>(R.id.messageComposer)

        header.setUser(user)
        messageList.setUser(user)
        composer.setUser(user)
    }
}

3. Style Classes

Every component has a corresponding style class in its style/ subpackage:

ComponentStyle Class
CometChatConversationsCometChatConversationsStyle
CometChatUsersCometChatUsersStyle
CometChatGroupsCometChatGroupsStyle
CometChatGroupMembersCometChatGroupMembersStyle
CometChatMessageListCometChatMessageListStyle
CometChatMessageComposerCometChatMessageComposerStyle
CometChatMessageHeaderCometChatMessageHeaderStyle
CometChatCallLogsCometChatCallLogsStyle
CometChatThreadHeaderCometChatThreadHeaderStyle

Style classes resolve defaults from XML theme attributes and CometChatTheme singleton.

4. ViewModel Integration

Each component creates its own ViewModel internally via factories from chatuikit-core. ViewModels are shared with the Compose stack — the same CometChatConversationsViewModel powers both CometChatConversations (View) and CometChatConversations (@Composable).

Hard rules

  • Activity theme MUST inherit from CometChatTheme.DayNight (or .Light / .Dark) — Theme.AppCompat.*, Theme.MaterialComponents.*.Bridge, plain Theme.MaterialComponents.*, and Theme.Material3.* all crash at component inflation. See cometchat-android-v6-kotlin-placement "Activity theme" section.
  • Components create their own ViewModels internally — do NOT try to create or inject ViewModels manually
  • Use setUser(user) or setGroup(group) to configure messaging components — they need a target to load messages
  • For bubble customization, use setBubbleFactories() and set*ViewProvider() — see cometchat-android-v6-kotlin-customization

Capabilities

skillsource-cometchatskill-cometchat-android-v6-kotlin-componentstopic-agent-skillstopic-ai-agenttopic-chattopic-claude-codetopic-cometchattopic-cursortopic-messagingtopic-nextjstopic-reacttopic-react-nativetopic-ui-kit

Install

Quality

0.46/ 1.00

deterministic score 0.46 from registry signals: · indexed on github topic:agent-skills · 27 github stars · SKILL.md body (7,405 chars)

Provenance

Indexed fromgithub
Enriched2026-05-18 19:04:46Z · deterministic:skill-github:v1 · v1
First seen2026-05-07
Last seen2026-05-18

Agent access

cometchat-android-v6-kotlin-components — Clawmart · Clawmart