// the find
FaridSafi/react-native-gifted-chat
💬 The most complete chat UI for React Native
The go-to chat UI component for React Native — handles message lists, input toolbar, typing indicators, reactions, reply threading, and link parsing out of the box. It's been around long enough that most React Native chat apps either use it or copied it. The README now prominently says active development has moved to a maintained fork.
Full TypeScript generics let you extend IMessage without losing type safety across the whole component tree. The customization surface is genuinely deep — nearly every sub-component can be swapped out via render props, so you're not fighting the library when your design diverges from defaults. Keyboard handling was recently moved to react-native-keyboard-controller, which is the right call over the old KeyboardAvoidingView hacks. Test IDs are exported and layout events are documented, which is more than most RN libraries bother with.
The library is in maintenance mode — the README itself tells new projects to use the fork instead, which is a bad sign if you're starting something today and want active bug fixes or new RN version support. Five peer dependencies (reanimated, gesture-handler, safe-area-context, keyboard-controller, plus action-sheet) means a meaningful install surface and version conflict risk in any existing app. Message state management is entirely on you — there's no built-in pagination model or optimistic update pattern, so at any real scale you're bolting on your own layer. The web support story is still an afterthought, with a config-overrides.js webpack workaround that hasn't aged well.