Chat app is a modern chat application for Android and IOS which enables users to send and receive text messages, create groups, and share photos with their friends in real-time. ChatApp makes it easier, simpler, and faster to connect with everyone and it is also easy to use.
The frontend is built using React Native, React Navigation, React Context, JavaScript, HTML, and CSS.
The backend is built using AWS Amplify, which provides a set of pre-built backend services like authentication, database, storage, and real-time data synchronization. The backend is deployed on Amazon Web Services (AWS) and uses Amazon Cognito for user authentication, Amazon DynamoDB for storing chat messages, and Amazon S3 for storing photos. The real-time data synchronization is provided by AWS AppSync and AWS Amplify DataStore.
The frontend communicates with the backend using a set of RESTful APIs provided by AWS Amplify.
To use the app, follow these steps:
- Open the app and create an account using your email address.
- Verify your email address by entering the code you receive in the email.
- Log in to the app using your email address and password.
- On the main chat screen, you can see a list of your recent chats (It will be empty upon first login).
- To start a new chat, click on the contacts icon in the right of the upper tab and click on the person you want to chat with.
- To create a group chat, click on the "New Group" button. Then enter the group name and select the people you want to add to the group.
- To send a message, type your message in the input field at the bottom of the screen and press the "Send" button.
- To share a photo, click on the plus icon on the left of the input field and select the photo you want to share from your gallery.
To install the app on your local machine, follow these steps:
- Clone the GitHub repository:
git clone <repository_url> - Install the dependencies:
cd ChatApp npm install - Start the app:
npm start npx react-native run-ios for IOS npx react-native run-android for Android
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.





