> ## Documentation Index
> Fetch the complete documentation index at: https://cometchat-22654f5b-docs-rn-guide-message-privately.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Customize UI Kit

> Customize UI Kit — CometChat documentation.

This guide helps you to enable/disable features present in the UI Kit.

In order to achieve this, you need to refer to the UIKitSettings class present in the UI Kit Library.

<Warning>
  Important

  * UIKitSettings class variables have to be changed in the class file located at CometChatWorkspace/src/util. By default, all settings will be enabled.

  * For advanced level customization, you can modify the source code of the UI Kit as per your requirement.
</Warning>

### Tab bar settings

| Class variables                                           | Description                                                     |
| --------------------------------------------------------- | --------------------------------------------------------------- |
| chats = true                                              | Hide/Show Recent Chats Value could be *true* or *false*         |
| users = true                                              | Hide/Show Users tab Value could be *true* or *false*            |
| groups = true                                             | Hide/Show Groups tab Value could be *true* or *false*           |
| userSettings = true                                       | Hide/Show User Information tab Value could be *true* or *false* |
| tabs = \["chats", "users", "groups", "calls", "settings"] | Shuffle or re-arrange tabs                                      |

### Recent chat settings

| Class variables                     | Description                                                                            |   |
| ----------------------------------- | -------------------------------------------------------------------------------------- | - |
| unreadCount = true                  | Show the unread count in the chats list Value could be *true* or *false*               |   |
| chatListMode = "USERS\_AND\_GROUPS" | Show user, group, or both chats Value could be "USERS", "GROUPS", "USERS\_AND\_GROUPS" |   |

### Call settings

| Class variables            | Description                                                      |
| -------------------------- | ---------------------------------------------------------------- |
| userAudioCall = true       | Enable audio call for user Value could be *true* or *false*      |
| groupAudioCall = true      | Enable audio call for group Value could be *true* or *false*     |
| userVideoCall = true       | Enable video call for user Value could be *true* or *false*      |
| groupVideoCall = true      | Enable video call for group Value could be *true* or *false*     |
| enableSoundForCalls = true | Enable sound for calls Value could be *true* or *false*          |
| callNotifications = true   | Show action messages for calls. Value could be *true* or *false* |

### User settings

| Class variables         | Description                                                    |
| ----------------------- | -------------------------------------------------------------- |
| userListMode = "ALL"    | Show all users/friends Value could be "ALL", "FRIENDS", "NONE" |
| showUserPresence = true | Show user presence Value could be *true* or *false*            |
| blockUser = true        | Allow block/unblock user Value could be *true* or *false*      |
| searchUsers = true      | Allow search in the user list alue could be *true* or *false*  |

### Group settings

| Class variables                             | Description                                                                            |
| ------------------------------------------- | -------------------------------------------------------------------------------------- |
| groupCreation = true                        | Allow creating group Value could be true or false                                      |
| joinOrLeaveGroup = true                     | Allow joining or leaving a group Value could be true or false                          |
| allowDeleteGroup = true                     | Allow deleting group Value could be true or false                                      |
| viewGroupMembers = true                     | Allow viewing group members Value could be true or false                               |
| allowAddMembers = true                      | Allow adding group member Value could be true or false                                 |
| allowModeratorToDeleteMemberMessages = true | Allow moderator to delete messages of participants Value could be true or false        |
| kickMember=true                             | Allow user to kick group members Value could be true or false                          |
| banMember = true                            | Allow user to ban group members Value could be true or false                           |
| allowPromoteDemoteMembers = true            | Allow user to promote or demote members Value could be true or false                   |
| joinLeaveNotifications = true               | Show action messages for groups Value could be true or false                           |
| searchGroups = true                         | Allow search in the group list Value could be true or false                            |
| messageInPrivate = true                     | Enable option to send message to group members in private Value could be true or false |

### Message settings

| Class Variable             | Description                                                                                                                            |
| -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `sendMessageInOneOnOne`    | Allow sending 1-1 message. Value could be `true` or `false`.                                                                           |
| `sendMessageInGroup`       | Allow sending message in groups. Value could be `true` or `false`.                                                                     |
| `sendPhotoVideos`          | Allow sending photos & videos. Value could be `true` or `false`.                                                                       |
| `sendFiles`                | Allow sending files & documents. Value could be `true` or `false`.                                                                     |
| `sendEmojis`               | Allow sending emojis. Value could be `true` or `false`.                                                                                |
| `sendEmojisInLargerSize`   | Allow sending emojis in larger size. Value could be `true` or `false`.                                                                 |
| `sendTypingIndicator`      | Allow sending/receiving typing indicator. Value could be `true` or `false`.                                                            |
| `editMessage`              | Allow editing a message. Value could be `true` or `false`.                                                                             |
| `deleteMessage`            | Allow deleting a message. Value could be `true` or `false`.                                                                            |
| `threadedChats`            | Allow threaded replies on a message. Value could be `true` or `false`.                                                                 |
| `sendLiveReaction`         | Allow sharing live reaction. Value could be `true` or `false`.                                                                         |
| `viewShareMedia`           | Allow shared media. Value could be `true` or `false`.                                                                                  |
| `showReadDeliveryReceipts` | Allow read/delivery receipts for messages. Value could be `true` or `false`.                                                           |
| `polls`                    | Allow creating a poll (Poll Extension must be enabled from Dashboard). Value could be `true` or `false`.                               |
| `enableSoundForMessages`   | Enable sound for incoming/outgoing messages. Value could be `true` or `false`.                                                         |
| `sendMessageReaction`      | Enable reactions for messages. Value could be `true` or `false`.                                                                       |
| `collaborativeDocument`    | Enable collaborative document (Collaborative document Extension must be enabled from Dashboard). Value could be `true` or `false`.     |
| `collaborativeWhiteboard`  | Enable collaborative whiteboard (Collaborative whiteboard Extension must be enabled from Dashboard). Value could be `true` or `false`. |
| `messageTranslation`       | Enable message translation (Message translation Extension must be enabled from Dashboard). Value could be `true` or `false`.           |
| `sendStickers`             | Allow sending stickers (Stickers Extension must be enabled from Dashboard). Value could be `true` or `false`.                          |
| `smartReplies`             | Enable smart replies (Smart Reply Extension must be enabled from Dashboard). Value could be `true` or `false`.                         |
| `hideDeletedMessages`      | Enable hiding messages. Value could be `true` or `false`.                                                                              |
