/rn-messenger

Simple React Native messaging app

Primary LanguageJavaScript

rn-messenger

logo

This is a simple messaging app built on React Native, Expo, and Firebase/Firestore. In this app you can chat other users also on the platform by either starting new conversations or viewing existing ones.

UI

All frontend components are taken from react-native-paper, which is a React Native implementation of Google's Material UI. The navigation is done via react-navigation, a very popular library for navigation in React Native apps. React Native provides a built-in StyleSheet class for adding custom styles to existing components.

The chat feature is built with react-native-gifted-chat, an excellent framework for embedding chat functionality in apps.

State Management

State for this app is managed using redux, with a special firebase integration provided by react-redux-firebase and redux-firestore. The redux-firestore library makes it possible to listen to collections while simultaneously making them a part of the global state.

Data Storage

As alluded to, data for this app is stored in Firestore, a document-based database which comes as a part of Firebase. Authentication is also managed through Firebase.

Build

This app is built with Expo.