Spring Boot

Build any chat use case into your Spring Boot app

Quickly embed a customizable chat experience into your Spring Boot app using the best chat APIs, feature-rich SDKs, and a highly customizable pre-built UI.
Hello, Magnus. Just a reminder, your dissertation deadline is this week. How are you coming along?
1m
Hi! I'm almost done, just finalizing edits and checking my citations.Just now
Great to hear! Anything you're worried about?
Just now
Just aiming to meet all the guidelines. I'll finish on time, I'm confident of that.Just now
If you need a review or have questions, let me know. Be sure to submit by the deadline.
Just now
Will do. Thanks for the support!Just now
Say something...
Quick integration

Connect users with a fully customizable chat using our real-time messaging infrastructure that works great with your Spring Boot backend.

Drop-in chat UI

Ship faster by using pre-built components that are highly customizable. Get up and running in just 10 minutes.

Fully-featured

All the essential messaging features you need. Replies, mentions, typing indicators, link previews, emojis, and more.

Javascript SDK for client-side integration

For client-side integrations, web and mobile, you can use a feature-rich JavaScript SDK. The SDK comes with a customizable and pre-built chat UI that allows you to ship faster.

REST API for server-side integration

You can access chat API endpoints server-side. Call the TalkJS REST API to manage messages, conversations, and users from your backend.

1package com.example.talkjsspringboot;
2
3import org.springframework.stereotype.Controller;
4import org.springframework.ui.Model;
5import org.springframework.web.bind.annotation.GetMapping;
6
7@Controller
8public class ChatController {
9
10 User me = new User("example_user_1", "Alice", "https://talkjs.com/images/avatar-7.jpg", "alice@example.com", "Hi!", "default");
11 User other = new User("example_user_2", "Bob", "https://talkjs.com/images/avatar-5.jpg", "bob@example.com", "Hi!", "default");
12
13 @GetMapping("/chat")
14 public String chat(Model model) {
15 model.addAttribute("me", me);
16 model.addAttribute("other", other);
17 return "chat";
18 }
19}
We were able to offload all messaging to TalkJS — hugely simplifying our development of an otherwise complex stack.
Deryk Wenaus avatar
Deryk Wenaus
CTO, Retreat Guru

Ready-made chat UI you can customize

The chat UI comes with three different layouts — that are highly customizable — which you can mix and match to suit your needs. You have complete control over the styling, the layout, and document structure of the chat messages and the possibility to show metadata.

Inbox
The TalkJS Inbox shows the chat history on the left, selected conversation on the right. It's designed to act as the messaging center of your app, usually living on its own page.
Read the Inbox docs
Chatbox
The Chatbox is just the right half of the Inbox UI mode. It takes up less space and is designed to be embedded in your app near an order confirmation, a booking, or user profile.
Read the Chatbox docs
Popup
You can also show a conversation in a React popup that only shows up when the user clicks a button somewhere. When shown, the popup is positioned on the bottom right of your page.
Read the Popup docs