How ghiculescualexandru/stream-chat-react-native works
This repository is the official React Native and Expo UI SDK for Stream Chat. An app supplies the SDK’s chat client and renders chat and channel-list components; users discover or select a channel, view messages and threads, and compose messages or attachments, with chat operations handled by the Stream Chat client. The graph highlights those product stages and the SDK’s context layer. The README documents the SDK’s scope; sampled source confirms message-action calls and channel-preview reads, but not every component’s wiring.
Main entry points: Chat.tsx Chat provider · MessageInput.tsx Message input · ChannelList.tsx Channel list · Channel.tsx Channel view
Components 15
Composition and state
- Chat provider
package/src/components/Chat/Chat.tsx - SDK contexts
package/src/contexts/index.ts
Channel discovery
- Channel list
package/src/components/ChannelList/ChannelList.tsx - Channel preview
package/src/components/ChannelPreview/ChannelPreview.tsx
Conversation
- Channel view
package/src/components/Channel/Channel.tsx - Message list
package/src/components/MessageList/MessageList.tsx - Message actions
package/src/components/Message/hooks/useMessageActionHandlers.ts - Message input
package/src/components/MessageInput/MessageInput.tsx - Thread view
package/src/components/Thread/Thread.tsx - Autocomplete
package/src/components/AutoCompleteInput/AutoCompleteInput.tsx
Attachments and media
- Attachment picker
package/src/components/AttachmentPicker/AttachmentPicker.tsx - Attachments
package/src/components/Attachment/Attachment.tsx - Image gallery
package/src/components/ImageGallery/ImageGallery.tsx
Other components
- Chat app
- Stream Chat
Connections 18
- Chat app → Chat provider: renders
- Chat provider → Stream Chat: uses client
- Chat provider → SDK contexts: provides state
- Chat provider → Channel list: renders
- Chat provider → Channel view: renders
- Channel list → Stream Chat: queries channels
- Channel list → Channel preview: renders previews
- Channel preview → Stream Chat: reads channel state
- Channel view → Message list: renders messages
- Channel view → Message input: renders input
- Message list → Message actions: renders actions
- Message actions → Stream Chat: calls chat API
- Message input → Autocomplete: suggests entries
- Message input → Attachment picker: opens picker
- Message input → Stream Chat: sends messages
- Message actions → Thread view: opens thread
- Message list → Attachments: renders attachments
- Attachments → Image gallery: opens gallery