Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
67aeb69
Update .gitignore
swapnil-cometchat Mar 6, 2026
caefbec
Update html-bootstrap-jquery.mdx
swapnil-cometchat Mar 6, 2026
d10743d
android overview and integration
swapnil-cometchat Mar 6, 2026
7033982
android structure
swapnil-cometchat Mar 6, 2026
ff6198e
updates tabs structure for android
swapnil-cometchat Mar 6, 2026
9377c2b
updates android docs
swapnil-cometchat Mar 6, 2026
45971bd
updates ios docs
swapnil-cometchat Mar 6, 2026
1c0704d
updates flutter ui kit builder
swapnil-cometchat Mar 6, 2026
ca7df00
fixes
swapnil-cometchat Mar 6, 2026
2f6c13d
Update overview.mdx
swapnil-cometchat Mar 6, 2026
7918f7c
react native
swapnil-cometchat Mar 6, 2026
23d57f1
Update overview.mdx
swapnil-cometchat Mar 6, 2026
7ae723a
updates flutter ui kit builder docs
swapnil-cometchat Mar 6, 2026
667ec37
react native - react ui kit builder docs
swapnil-cometchat Mar 6, 2026
fdb8b73
Update .gitignore
swapnil-cometchat Mar 20, 2026
56a0cfb
updates ignore files
swapnil-cometchat Mar 20, 2026
3009ae1
closing Tip
swapnil-cometchat Mar 20, 2026
ea6588e
Tip
swapnil-cometchat Mar 20, 2026
df9dc19
"UI Kit Builder Settings"
swapnil-cometchat Mar 20, 2026
a9edc29
Update integration.mdx
swapnil-cometchat Mar 20, 2026
0e9de4c
Update integration.mdx
swapnil-cometchat Mar 20, 2026
616c0ca
Update integration.mdx
swapnil-cometchat Mar 20, 2026
01563f2
Update overview.mdx
swapnil-cometchat Mar 20, 2026
c054aba
Update overview.mdx
swapnil-cometchat Mar 20, 2026
282d8e2
Update integration.mdx
swapnil-cometchat Mar 20, 2026
a78151a
Update integration.mdx
swapnil-cometchat Mar 20, 2026
50bd312
Merge branch 'main' into docs/ui-kit-builder-mobile-docs
swapnil-cometchat Mar 23, 2026
983febc
Update integration.mdx
swapnil-cometchat Mar 23, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
400 changes: 400 additions & 0 deletions chat-builder/android/builder-customisations.mdx

Large diffs are not rendered by default.

204 changes: 204 additions & 0 deletions chat-builder/android/builder-dir-structure.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,204 @@
---
title: "Directory Structure"
sidebarTitle: "Directory Structure"
description: "Overview of the CometChat UI Kit Builder directory layout for Android — understand where to find and customize components, settings, and styles."
---

The exported UI Kit Builder code lives in `chat-builder/src/main/java/com/cometchat/builder/`. This guide helps you navigate the structure so you know exactly where to make changes.

<Tree>
<Folder name="chat-builder">
<Folder name="src/main">
<Folder name="java/com/cometchat/builder">
<Folder name="data" description="Data models, enums, interfaces, repositories" />
<Folder name="ui" description="UI components (activities, fragments, adapters)" />
<Folder name="utils" description="Utility functions and helpers" />
<Folder name="viewmodels" description="ViewModels for UI components" />
<File name="AppCredentials.kt" />
<File name="BuilderSettingsHelper.kt" />
<File name="CometChatBuilderSettings.kt" />
</Folder>
<Folder name="res">
<Folder name="drawable" description="Icons, shapes, and drawable resources" />
<Folder name="font" description="Font files (TTF, OTF)" />
<Folder name="layout" description="XML layout files" />
<Folder name="menu" description="Menu resource files" />
<Folder name="values" description="Strings, colors, themes" />
<Folder name="values-<locale>" description="Localized string resources" />
</Folder>
</Folder>
<File name="build.gradle.kts" />
<File name="cometchat-builder-settings.json" />
</Folder>
</Tree>

---

## Root Files

| File | Purpose |
| ------------------------------ | ---------------------------------------------------------------------- |
| `CometChatBuilderSettings.kt` | Auto-generated feature flags and configuration constants from Builder |
| `BuilderSettingsHelper.kt` | Utility class for applying Builder settings to CometChat UI components |
| `AppCredentials.kt` | CometChat app credentials (APP_ID, AUTH_KEY, REGION) |

---

## Key Folders

### `data/`

Contains data layer components including enums, interfaces, and repositories.

<Tree>
<Folder name="data">
<Folder name="enums" description="Enum classes (e.g., GroupAction)" />
<Folder name="interfaces" description="Callback interfaces (OnBackPress, OnItemClickListener)" />
<Folder name="repository" description="Data repository classes" />
</Folder>
</Tree>

### `ui/`

Contains all UI-related components organized by type.

<Tree>
<Folder name="ui">
<Folder name="activity" description="Activity classes (HomeActivity, MessagesActivity, LoginActivity)" />
<Folder name="adapters" description="RecyclerView adapters (BannedMembersAdapter, SampleUsersAdapter)" />
<Folder name="customviews" description="Custom view components (CometChatBannedMembers)" />
<Folder name="fragments" description="Fragment classes (ChatsFragment, CallsFragment, UsersFragment)" />
</Folder>
</Tree>

### `utils/`

Utility functions and application-level helpers.

<Tree>
<Folder name="utils">
<File name="AppConstants.kt" description="Application constants" />
<File name="AppUtils.kt" description="General utility functions" />
<File name="BuilderApplication.kt" description="Application class" />
</Folder>
</Tree>

### `viewmodels/`

ViewModels for managing UI state and business logic.

<Tree>
<Folder name="viewmodels">
<File name="AppCredentialsViewModel.kt" />
<File name="CallDetailsViewModel.kt" />
<File name="GroupDetailsViewModel.kt" />
<File name="LoginViewModel.kt" />
<File name="MessagesViewModel.kt" />
</Folder>
</Tree>

---

## res/ Folder Structure

### `layout/`

XML layout files for activities, fragments, and custom views.

<Tree>
<Folder name="layout">
<File name="builder_activity_home.xml" description="Main home screen layout" />
<File name="builder_activity_messages.xml" description="Messages screen layout" />
<File name="builder_activity_login.xml" description="Login screen layout" />
<File name="builder_fragment_chats.xml" description="Chats tab fragment" />
<File name="builder_fragment_calls.xml" description="Calls tab fragment" />
<File name="builder_fragment_users.xml" description="Users tab fragment" />
<File name="builder_fragment_groups.xml" description="Groups tab fragment" />
</Folder>
</Tree>

### `values/`

Resource values including strings, colors, and themes.

<Tree>
<Folder name="values">
<File name="colors.xml" description="Color definitions" />
<File name="strings.xml" description="String resources" />
<File name="themes.xml" description="Theme definitions and styles" />
</Folder>
</Tree>

### `font/`

Font resources for typography customization.

<Tree>
<Folder name="font">
<File name="inter_regular.otf" />
<File name="inter_medium.otf" />
<File name="inter_bold.otf" />
<File name="roboto_regular.ttf" />
<File name="roboto_medium.ttf" />
<File name="roboto_bold.ttf" />
</Folder>
</Tree>

### `drawable/`

Drawable resources including icons, shapes, and backgrounds.

<Tree>
<Folder name="drawable">
<File name="builder_ic_chats.xml" description="Chat icon" />
<File name="builder_ic_calls.xml" description="Calls icon" />
<File name="builder_ic_users.xml" description="Users icon" />
<File name="builder_ic_bottom_bar_groups.xml" description="Groups icon" />
<File name="builder_curved_button_drawable.xml" />
</Folder>
</Tree>

---

## Quick Reference: Where to Customize

| What you want to change | Where to look |
| ------------------------------- | -------------------------------------------------- |
| Enable/disable features | `CometChatBuilderSettings.kt` |
| Apply settings to components | `BuilderSettingsHelper.kt` |
| Theme colors & styles | `res/values/themes.xml`, `res/values/colors.xml` |
| Typography & fonts | `res/font/` |
| Screen layouts | `res/layout/` |
| Text & translations | `res/values/strings.xml`, `res/values-<locale>/` |
| Activity behavior | `ui/activity/` |
| Fragment behavior | `ui/fragments/` |
| App credentials | `AppCredentials.kt` |

<Note>
Prefer using `CometChatBuilderSettings.kt` for feature toggles and `themes.xml` for styling. For extensive changes, extend existing components instead of modifying core files directly.
</Note>

---

## Next Steps

<CardGroup cols={2}>
<Card
title="UI Kit Builder Settings"
href="/chat-builder/android/builder-settings"
>
Configure feature toggles and behavior
</Card>
<Card
title="Customizations"
href="/chat-builder/android/builder-customisations"
>
Modify component props, styling, and behavior
</Card>
<Card title="Theming" href="/ui-kit/android/theming">
Customize colors, typography, and styling
</Card>
<Card title="Localization" href="/ui-kit/android/localization">
Add multi-language support
</Card>
</CardGroup>
Loading