---
url: https://talkjs.com/docs/Features
---

# Features

Discover built-in features and customization options in TalkJS.

Ask a question Copy for LLM [View as Markdown](/docs/Features.md)
An overview of the main features built-in with TalkJS chat, as well as customizations options.

| Feature | Description |
| --- | --- |
| [1-on-1 chat (Direct messages)](/docs/Features/Conversations/1-on-1_Chat/) | Allow users to have a private conversation with one other user. |
| [Access permissions](/docs/Features/Conversations/Group_Chat/#access_permissions/) | Programmatically control fine-grained access permissions for any participant in a conversation. |
| [Action buttons and links](/docs/Features/Action_Buttons_Links/) | Buttons and links to execute custom code in your chat. |
| [AI agent interface](/docs/Features/AI_Interface/) | Allow AI agents to interface with your chat. |
| [Authentication](/docs/Features/Security/Authentication/) | Authentication helps keep your chat and user data secure. |
| [Browser notifications](/docs/Features/Notifications/Browser_Notifications/) | Trigger a browser notification when a new message comes in. |
| [Browser synchronization](/docs/Features/Security/Browser_Synchronization/) | Create or update users and conversations in your frontend code, and let the browser synchronize the data with the TalkJS backend. |
| [Chatbox UI](/docs/Features/Chat_UIs/#chatbox/) | Prebuilt chat UI that displays a single conversation. |
| [Content Security Policy](/docs/Features/Security/Content_Security_Policy/) | Use a Content Security Policy and add TalkJS to your allowlist. |
| [Conversation actions](/docs/Features/Conversations/Conversation_Actions/) | Allow a user to perform certain actions in a conversation. |
| [Conversation list](/docs/Features/Chat_UIs/#conversation-list/) | Prebuilt chat UI that displays a list of conversations the user is part of. |
| [Conversation list filters](/docs/Features/Conversations/Conversation_List_Filters/) | Filter which conversations show up in the conversation list of a user's inbox. |
| [Custom message types](/resources/event-invitations-and-custom-message-types/) Guide | Allow users to send event invitations or other custom message types. |
| [Delivery receipts](/docs/Features/Messages/Delivery_Receipts/) | Show users when their messages have been delivered. |
| [Email notifications](/docs/Features/Notifications/Email_Notifications/) | Notify users via email about any messages they may have missed. |
| [Email themes](/docs/Features/Themes/#email-themes) | Customize the theme of your email notifications. |
| [Emojis](/docs/Features/Messages/Emojis/) | Allow users to react to messages with emojis and add custom emojis. |
| [Test and live environments](/docs/Features/Environments/) | Use test mode for development and testing, and live mode for production. |
| [File sharing](/docs/Features/Messages/File_Sharing/) | Allow users to share files. |
| [Formatting](/docs/Features/Messages/Formatting/) | Supports *italics*, **bold**, strikethrough and `code` formatting in messages. |
| [Forwarding](/resources/how-to-add-a-forward-message-feature/) Guide | Allow users to forward messages to another conversation. |
| [GIF picker](/resources/how-to-add-a-gif-picker-to-your-talkjs-chat/) Guide | Allow users to select and send GIFs to a conversation. |
| [Group chat](/docs/Features/Conversations/Group_Chat/) | Allow users to have a conversation with more than one other user. |
| [Hidden users](/resources/how-to-add-a-hidden-user-to-a-talkjs-conversation/) Guide | Allow admins, moderators, or other users to stay hidden in a conversation. |
| [Inbox chat UI](/docs/Features/Chat_UIs/#inbox/) | Prebuilt chat UI that displays a conversation list next to the currently selected conversation. The inbox UI is currently only available on the classic JavaScript and React SDKs. |
| [Integrations](/docs/Features/Integrations/) | Integrate third-party services into your chat. |
| [Link previews](/docs/Features/Messages/Link_Previews/) | Control how you show link previews for any URL shared in messages. |
| [Localization](/docs/Features/Language_Support/#localization/) | Localize the chat UI into any language. |
| [Mentions](/docs/Features/Messages/Mentions/) | Allow users to mention other users in a conversation. |
| [Message actions](/docs/Features/Messages/Message_Actions/) | Allow users to edit or delete messages in a conversation, or add a custom message action. |
| [Message field options](/docs/Features/Messages/Message_Field_Options/) | Customize how users can interact with the message field in the chat. |
| [Message filters](/docs/Features/Messages/Message_Filters/) | Filter which messages you show to users in the chat. |
| [Mobile push notifications](/docs/Features/Notifications/Mobile_Push_Notifications/) | Set up mobile push notifications. |
| [Mobile support](/docs/Features/Supporting_Mobile_Devices/) | Enhanced user experience on mobile devices. |
| [Popup chat UI](/docs/Features/Chat_UIs/#popup/) | Displays a chat at the bottom of the page when a user clicks to open. The popup UI is currently only available on the classic JavaScript and React SDKs. |
| [Read receipts](/docs/Features/Messages/Read_Receipts/) | Show users when their messages have been read. |
| [Real-time message translation](/docs/Features/Language_Support/#real-time-message-translation) | Translate any messages sent by your users in real-time. |
| [Search](/docs/Features/Conversations/Search/) | Search messages and conversations in a conversation list. |
| [Secret keys](/docs/Features/Security/Secret_Keys/) | Use secret keys used for authenticating the REST API and for signing JSON web tokens (JWTs). |
| [SMS notifications](/docs/Features/Notifications/SMS_Notifications/) | Notify users via SMS about any messages they may have missed. |
| [Status indicator](/docs/Features/Conversations/Status_Indicator/) | Show which users are online with an online status indicator. |
| [Themes](/docs/Features/Themes/) | Themes to control the appearance and behavior of your chat UI. |
| [Threads](/resources/how-to-build-a-reply-thread-feature-with-talkjs/) Guide | Allow users to reply in a thread. |
| [Typing indicator](/docs/Features/Conversations/Typing_Indicator/) | Show users when someone is typing a message. |
| [Voice messages](/docs/Features/Messages/Voice_Messages/) | Allow users to record and send voice messages in the chat. |