Navigation Menu

Skip to content

pubnub/react-chat-components

Repository files navigation

PubNub Chat Components for React and React Native

PubNub Chat Components for React and React Native are the fastest way to add chat features like direct and group messaging, typing indicators, or reactions, without going through the complexity of the low-level architecture of real-time networks.

  • Reduced Implementation Time: Develop proof-of-concept and production-ready apps faster using predefined components.
  • Fast and Simple Extensibility: Add rich features, like typing indicators, read receipts, or reactions, without writing complex code.
  • Flexible and Customizable Components: Customize component design and add custom components to extend functionality.
  • High Scalability: Let PubNub take care of scaling and reliability as you grow your app.
  • Easy Theming: Use the built-in light and dark themes or create custom ones for various use cases: group, support, and event chats.
  • Strong Typing: Utilize the power of TypeScript to develop your application.

PubNub Chat Components

Features

  • User and Channel Metadata: Add additional information about the users, channels, and their memberships from PubNub Objects storage using custom hooks
  • Subscriptions: Subscribe to user channels automatically
  • Messages: Publish and display new and historical text messages
  • Presence: Get currently active users, observe their state, and notify them about changes
  • Typing Indicators: Display notifications that users are typing
  • Message Reactions: Publish and add emojis to messages

Available components

Prerequisites

Usage

Start by exploring our demo apps that were built using chat components:

Source code React React Native Description
getting-started Tutorial Tutorial Sample 1:1 chat app to get started
group-chat Demo / Tutorial - Complex moderated group chat app
live-events Demo / Tutorial - Live events app with a chat panel
telehealth Demo / Tutorial - Simple patient-doctor chat app

Related documentation

Support

If you need help or have a general question, contact support.