Mingo is a messaging & chat room application built on React Native.
- Anonymous User Sign-In: Users can easily sign in without the need for an account or password.
- Personalized Experience: Custom display name and chat background.
- Real-Time Messaging: Send and receive text messages with live updates.
- Offline Access: Read previous conversations without an internet connection.
- Media Sharing: Share images from the device's gallery or capture new photos with the camera.
- Location Sharing: Send current location to friends, viewable on an interactive map.
Prerequisites
- Node.js (v18.x.x or higher)
- npm or yarn
- Expo CLI (v5.x.x)
- Expo Go mobile app
To use this application locally, follow these steps inside your terminal:
- Clone this repository to your local machine:
git clone https://github.com/monicaalyssa/mingo- Navigate to the project directory:
cd mingo - Install dependencies:
npm install - Install Expo CLI:
npm install -g expo-cli - Start the app with
expo start, this will open the Expo Metro Bundler. - Scan the QR code on your mobile device to open Mingo in the Expo Go app.
This project was built using [Node v18.20.4] and uses the following technologies:
React Native: The core framework, allowing a cross-platform mobile app (iOS and Android) using JavaScript and React.
Expo: Toolset for the React Native development process, providing a pre-configured environment.
Gifted Chat Library: React Native componenent library for chat UIs.
Firebase (Firestore): NoSQL database by Google, for real-time data syncing and offline support. It stores chat messages and user data.
Firebase Authentication: Secure authentication service offering anonymous authentication for quick user sign-in.