Introduction • Features • Installation Guide • Building Guide • Screenshots • Credits • License • Contributors
Real Time Chat Application that written in React Native and Expo platform. It uses Firebase (Web version 9) realtime database.
https://github.com/Ctere1/react-native-chat/assets/62745858/bcde4aa0-d2f2-4d8c-8716-bf274c059d2e
[!Note] You can check the screenshots below
Feature | Description |
---|---|
Signup and Login |
Firebase Email/Password sign-in method. Allow users to sign up using their email address and password |
Send Text Message |
Essential for casual messaging |
Send Picture |
You can send pictures without losing quality |
Group Chat |
You can send your messages to multiple people at the same time |
Delete Chat |
You can delete chats after holding and selecting them |
Delete Account |
You can delete your account |
Real Time Chat |
The last incoming message will be placed at the top of the chat screen |
Users List |
Registered users sorted by alphabetical index (A -> Z) |
Note to Self |
You can also take notes by sending a message to yourself |
To clone and run this application, you'll need Git and Node.js (which comes with npm) installed on your computer.
# Clone this repository
$ git clone https://github.com/Ctere1/react-native-chat
# Go into the repository
$ cd react-native-chat
# Install dependencies
$ npm install
For running the app:
# Go into the repository $ cd react-native-chat # Run the expo $ npx expo start
After these steps install the Expo Go mobile app from the Google Play Store or Apple App Store on your testing device. This app allows you to run and test React Native applications built with Expo.
[!Warning]
Do not forget to setup.env
file for Firebase connection. Please see the doc or see this comment
To build this application, follow these steps:
Before you can build the application, you need to configure your environment variables. Ensure you have a .env
file with the necessary Firebase configuration. Push the .env
file to the EAS environment using the following command:
eas secret:push --scope project --env-file .env
With the environment variables set and dependencies installed, you can build the APK for Android. Use the following command:
eas build -p android --profile preview
This command will start the build process using the preview profile (see eas.json). The build process will package your application into an APK file that you can install on an Android device.
[!Note] Environment variables defined in a
.env
file are only considered by the Expo CLI. Therefore, if you upload a.env
file to EAS Build, it can be used to inlineEXPO_PUBLIC_
variables into your application code.[!Note] However, the recommended practice is to use
.env
files in your local environment, while defining environment variables for EAS Build ineas.json
. Environment variables defined in youreas.json
build profile will be used when evaluating yourapp.config.js
when running eas build and will be available to all steps of the build process on the EAS Build server.[!Note] This may result in some duplication of variables between
.env
files and eas.json build profiles, but makes it easier to see what variables will be applied across all environments.
User can login | User can signup |
---|---|
User can access chats | User can see all users | User can create new group chat | User can delete chats |
---|---|---|---|
User can access settings | User can see the profile section | User can see the help section | User can see the account section |
---|---|---|---|
Emoji Panel | Note to Self | Main Chat Screen | Chat Information Screen |
---|---|---|---|
This software uses the following packages: