CtrlK
BlogDocsLog inGet started
Tessl Logo

pubnub/pubnub-chat

Build chat applications with PubNub Chat SDK

97

1.13x
Quality

72%

Does it follow best practices?

Impact

100%

1.13x

Average score across 20 eval scenarios

SecuritybySnyk

Risky

Do not use without reviewing

Overview
Quality
Evals
Security
Files

Evaluation results

100%

15%

Initialize PubNub Chat SDK for a Secured Application

Chat SDK initialization: import from @pubnub/chat, async Chat.init() factory, authKey (not token) for Access Manager, persistent userId, App Context prerequisite.

Criteria
Without context
With context

Import from @pubnub/chat

100%

100%

Async Chat.init factory

100%

100%

authKey not token

100%

100%

Persistent userId

100%

100%

App Context mentioned

0%

100%

100%

20%

Direct Messaging Service Module

Get-or-create user pattern before creating conversations, createDirectConversation with User object parameter, channel caching with deterministic keys.

Criteria
Without context
With context

Get before create user

100%

100%

User object to createDirect

100%

100%

Channel cache with Map

100%

100%

Deterministic cache key

50%

100%

channelData provided

0%

100%

100%

15%

React Chat Room Component with Live Features

Channel connect/disconnect for real-time messages, sendText for sending, cleanup subscriptions on unmount, typing indicators with startTyping/stopTyping/onTyping, debounced typing signals.

Criteria
Without context
With context

channel.connect for messages

100%

100%

channel.sendText to send

100%

100%

Unsubscribe in cleanup

100%

100%

Typing via onTyping

0%

100%

startTyping and stopTyping

100%

100%

Debounced typing signal

100%

100%

100%

5%

Message Interaction Features for Chat App

Message reactions via toggleReaction with emoji name strings and reactions property, message threading via getThread/createThread/hasThread, thread.sendText for replies.

Criteria
Without context
With context

toggleReaction method

100%

100%

Reactions data structure

100%

100%

getThread for existing

100%

100%

hasThread check

100%

100%

thread.sendText for reply

100%

100%

createThread for new

66%

100%

100%

6%

Channel Sidebar with Unread Badges

Message history pagination with getHistory, read receipts via setLastReadMessage, unread message counts via getUnreadMessagesCount, user memberships listing via getMemberships.

Criteria
Without context
With context

getHistory for messages

100%

100%

setLastReadMessage

88%

100%

getUnreadMessagesCount

85%

100%

getMemberships for channels

100%

100%

Latest message for read mark

100%

100%

Evaluated
Agent
Claude Code
Model
Claude Sonnet 4.6

Table of Contents