TalkJS Changelog logo
Back to Homepage

Changelog

Subscribe to Updates

Labels

  • All Posts
  • Bug fix
  • Announcement
  • Improvement
  • Chat UI
  • JavaScript SDK
  • REST API
  • Dashboard
  • Deprecated
  • New
  • React Native SDK
  • Flutter SDK
  • Security
  • React

Jump to Month

  • April 2025
  • March 2025
  • February 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • August 2024
  • July 2024
  • June 2024
  • May 2024
  • April 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • January 2023
  • October 2022
  • September 2022
  • August 2022
  • July 2022
  • June 2022
  • May 2022
  • March 2022
  • February 2022
  • December 2021
  • November 2021
  • October 2021
  • August 2021
  • July 2021
  • May 2021
  • April 2021
  • March 2021
  • February 2021
  • January 2021
  • December 2020
  • November 2020
  • September 2020
  • July 2020
  • June 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
Changelog byAnnounceKit

Create yours, for free!

Bug fixChat UIJavaScript SDKREST APINewReact Native SDK
a month ago

Manage chat UI themes with the REST API, and more

Highlight

Manage themes with the REST API

You can now manage your chat UI themes using the TalkJS REST API. This includes the options to create, update, delete or export a theme. You can directly edit themes for your test environment. Once you’re happy with the updates, copy the changes to your live environment, and you’re all set.

Managing your themes through the REST API makes it easier to work with themes across multiple projects, or keep themes in your code base and update them when deploying.

Overview of other changes

Added

  • Added an endpoint to the REST API that allows you to get a user's notification reply-to email address for a conversation. Any emails sent to that email address appear in the conversation as being sent by the user.
  • JavaScript SDK (0.34.0): Added SendMessageParams that can be passed to ConversationRef.send to send a message by specifying its content directly. This allows you to send text messages with manually-specified formatting, in addition to file attachments and locations.
  • JavaScript SDK (0.34.0): Added EditMessageParams that can be passed to MessageRef.edit to edit a message by specifying its content directly. This allows you to edit text messages with manually-specified formatting, in addition to file attachments and locations.
  • JavaScript SDK (0.34.0): Added Session.uploadFile and file-subtype-specific variants. This returns a FileToken that you can use in SendMessageParams or EditMessageParams.
  • React Native SDK (0.12.0): Added the customEmojis prop to Chatbox and ConversationList. This prop adds a set of custom emoji images to the emoji picker, the emoji autocompleter, and emoji reactions. It allows users to send and receive custom emojis.
  • React Native SDK (0.12.0): Added keyboardVerticalOffset prop to Chatbox. This prop is basically identical to the one passed to KeyboardAvoidingView. The default value is 90. Note that the keyboardVerticalOffset prop is only used in iOS to fix an iOS bug. On Android, the KeyboardAvoidingView component isn’t available.

Changed

  • React Native SDK (0.12.1): Changed the default value for the keyboardVerticalOffset to 95.

Fixed

  • Fixed an issue where user IDs weren’t sent correctly, which caused user mentions to break.
  • Fixed an issue where user mentions would break when the user ID contained a pipe (|) character.
  • React Native SDK (0.12.1): Fixed a bug in iOS when New Architecture is enabled, where the whole UI would be scrollable when the keyboard is open.
  • React Native SDK (0.12.0): Fixed a bug in iOS, where opening the keyboard would cause the ChatHeader or the top messages to get hidden. 
  • React Native SDK (0.12.0): Fixed the TypeError: _messageField.getTextResolver is not a function (it is undefined), js engine: hermes. error.
  • React Native SDK (0.12.0): Fixed ref methods not working when called after a delay.

New tutorial

Send event invitations and other custom message types

Out of the box, TalkJS lets you send text, attachments and even voice clips, but what if you business has more specialized types of content to send? In this tutorial, TalkJS developer Frederik Creemers shows you a pattern to create a whole range of custom message types for your chat—from event invitations to payment requests, auction bids, and contact cards.    




👋 Thoughts? Questions? Get in touch.

✨ Follow TalkJS on 𝕏 and LinkedIn to stay up to date.

👩🏾‍💻 Come work at TalkJS! Check out our jobs page.

Bug fixJavaScript SDKREST APINew
2 months ago

Easier push notifications with FCM, real-time translation, and more

Highlight

Push notifications with Firebase Cloud Messaging

Want to keep your users engaged even when they're away from your chat? Learn how to set up web push notifications with Firebase Cloud Messaging (FCM) in TalkJS. Lucy Keer offers a step-by-step guide for adding push notifications for your website or app. 

Read more

Overview of changes

Added

  • Added the option to set a referencedMessageId when importing messages with the REST API.
  • Added a hook that triggers an event when a message is translated in real-time. The event includes the message ID, original message text (text), detected language, and the translated message text (translatedText). This way, you can store both the original and translated versions of the message.

Fixed

  • Fixed an issue where, in the Realtime API, publishes would not be received correctly if the conversation ID of the conversation you’re subscribed to contained special characters.
  • Fixed a bug where notifications didn’t pick up correctly on edits to a message text.

New resources

Real-time message translation for chat apps

Real-time chat translation reduces language barriers and allows you to offer global support. Follow this guide by Chris Meyns to set up real-time message translation for your website or app. 

Check out real-time translation 

Code samples

Want to add custom features to your chat? Refresh your chat UI? Use code samples! Whether you're building with regular JavaScript, React, Angular, Flutter, or other popular frameworks, you’ll find a wide range of ready-to-use examples. From integrating AI chatbots to adding custom features like GIF pickers or polls, we've got you covered.

Explore code samples


👋 Thoughts? Questions? Get in touch.

✨Follow TalkJS on 𝕏 and LinkedIn to stay up to date.

👩🏾‍💻We’re hiring! Check out our jobs page.

Bug fixJavaScript SDKREST APINewFlutter SDKReact
10 months ago

OpenAPI spec, status page, SDK updates, and more

Added

  • Added an OpenAPI specification for the TalkJS REST API. The specification is available in both YAML and JSON formats for the most recent version (2024-01-01) of the REST API.
  • Added a status page where you can monitor the current health status of the TalkJS infrastructure: status.talkjs.com.
  • JavaScript SDK (0.22.0): Added the UserRef.set and UserRef.createIfNotExists methods to the RealTime API.
  • React SDK (v0.1.9): Added a "use client" banner to build outputs.

Fixed

  • Fixed an issue due to which it was temporarily impossible to batch update users using the REST API.
  • Fixed an issue due to which the decimal expiry of JWT for authentication didn't work correctly.
  • Flutter SDK (0.12.1): Fixed a conflict with the flutter_inappwebview package.

New tutorial

  • Add chat to a Next.js app with TalkJS




👋 Thoughts? Questions? Get in touch.

✨Follow TalkJS on 𝕏 and LinkedIn to stay up to date.

👩🏾‍💻We’re hiring! Check out our jobs page.

Bug fixImprovementJavaScript SDKREST APIDashboardNewReact Native SDK
a year ago

Intuitive new dashboard, better push notification support, and more

Highlights

Intuitive new dashboard

Your TalkJS dashboard has just become more intuitive to use, to get you started seamlessly. 

Overview of the TalkJS dashboard navigation with the following pages listed: Activity, Chat UI, Notifications, Themes, Settings, Live log, and Docs. Plus a toggle for live mode, and a dropdown menu with account details.

From the dashboard, you can:

  • Analyze chat usage and monitor conversation details on the Activity page.
  • Update the chat UI and user permissions from the Chat UI page.
  • Update browser, email, and SMS notification settings from the Notifications page.
  • Create and edit custom UI themes or email themes from the Themes page.
  • Finetune your app-wide settings—including security settings, localization, push notifications, and webhooks—on the Settings page.
  • Get real-time insights from the Live log page.

You can now find the Roles page to create or edit user roles by clicking on ‘Edit roles’ at the top of either the Chat UI page or the Notifications page.

Overview of the section of either the Chat UI page or the Notifications page where you can find the option to edit roles, with the 'Edit roles' link singled out..

Better push notification support

Sending mobile push notifications with TalkJS just got easier, with support for Apple Push Notification Service (APNs) tokens and the new Firebase Cloud Messaging (FCM) API.

Support for APNs tokens

TalkJS now supports using stateless authentication tokens for your communication with Apple Push Notification Service (APNs). Establishing a token-based connection to APNs has several main advantages:

  • You can use the same token from multiple provider servers.
  • You can use one token to distribute notifications for all apps in your Apple Developer Team.
  • APNs tokens don’t expire, so once you have configured them you’re all set.

You can configure APNs tokens from the Settings page of your TalkJS dashboard.

Support for new Firebase Cloud Messaging API

TalkJS now supports the newer Firebase Cloud Messaging (FCM) API for sending mobile push notifications. 

Google has deprecated FCM legacy APIs. For push notifications to continue to work, you will need to generate and provide a service account private key at the earliest opportunity, and before 20 June 2024. 

To start using the new FCM API, take the steps in the following guide: Configure Firebase Cloud Messaging.

Overview of other changes

Added

  • Added a /batch endpoint to the REST API, which you can use to perform multiple operations at once with a single call. See: REST API Batch endpoint documentation.
  • Added an option to the theme editor to allow you to customize the height of the conversation list. You can find the theme editor on the Themes page of your dashboard.
  • Added the option to access the current conversation object inside the MessageField theme component in the theme editor.
  • React SDK (version 0.1.4): Added a useUnreads hook that returns conversations with unread messages, to make it easier to render a component based on the list of conversations with unread messages.
  • React Native SDK (version 0.7.0): Added onLeaveConversation, onCustomMessageAction, and onCustomConversationAction props. These props replace the methods with the same names, which have been deprecated.

Changed

  • Javascript SDK (version 0.18.0): Changed that calling .select on a UI now returns a promise that is resolved when a new conversation is selected.

Deprecated

  • Deprecated the use of Apple Push Notification Service (APNs) certificates. Your configured APNs certificates will continue to work until the certificate expires. Instead of APNs certificates, you can now use APNs tokens.
  • Deprecated legacy themes with limited CSS support. To change the look and feel of TalkJS to match your style, use custom themes instead.
  • Javascript SDK (version 0.18.0): Deprecated ConversationSelectedEvent.others and SelectConversationEvent.others. Instead, use ConversationSelectedEvent.participants and SelectConversationEvent.participants.
  • React Native SDK (version 0.7.0): Deprecated the off method in both Chatbox and ConversationList.
  • React Native SDK (version 0.7.0): Deprecated onLeaveConversation, onCustomMessageAction and onCustomConversationAction methods. Instead, use the added props with the same names.

Fixed

  • Fixed an issue where the push notification tester in the TalkJS dashboard would not send out test push notifications correctly.
  • Fixed a bug that would make the chat freeze when attaching multiple files at once.
  • Fixed an issue where email changes on the Account settings page of the dashboard did not get updated correctly.
  • Fixed a bug where, on iOS, Arabic characters would not get deleted properly when using the backspace key.
  • Fixed an issue where a race condition occurred when selecting the inbox and setting the text of a message field at the same time.
  • React Native SDK (version 0.7.0): Fixed a bug on iOS where videos in link previews would automatically play in full screen mode, instead of inline.

Fresh tutorials and guides

  • How to add chat to a Laravel app with TalkJS
  • How to use TalkJS to create a team chat with channels
  • Chat moderation essentials
  • How to add a GIF picker to your TalkJS chat

👋 Thoughts? Questions? Get in touch.

✨Follow TalkJS on 𝕏 and LinkedIn to stay up to date.

👩🏾‍💻We’re hiring! Check out our jobs page.

AnnouncementNewReact Native SDK
3 years ago

React Native SDK

New We have some exciting news! We have shipped a React Native SDK 😄.

Prior to this release, getting TalkJS running in React Native applications required developers to perform multiple tasks like creating an HTML file for the webview, passing parameters from the app to the JavaScript running in the webview and sometimes even adding handlers so the code in the webview could call back to the app.

With the React Native SDK you can get TalkJS running in your React Native application with a few lines of code:


  

The new SDK makes it easier to use TalkJS in React Native applications by providing React Native Components that will feel natural to anyone using React Native.

Developers will now write significantly less code, save time and also make their code less error-prone. Additionally by using the SDK developers are guaranteed of backwards compatibility, meaning their code will always run even as TalkJS evolves.

So go ahead and check out our React Native Getting Started Guide.

We can't wait to see the cool stuff you are building!