Build a native mobile app focused on real-time text-based chat between friends.
The app should include the following screens and features:
1. **Authentication:**
* A simple user signup and login system using a unique username and password.
2. **Contacts Screen:**
* A screen that displays a list of the user's contacts or friends.
* A feature to add new contacts by searching for their username.
* Tapping on a contact's name should navigate the user to the chat screen with that person.
3. **Conversations List Screen:**
* This will be the main screen after login.
* It should display a list of all active conversations.
* Each item in the list should show the friend's name, the last message sent in the conversation, and the time of the last message.
* Unread messages should be clearly indicated (e.g., with a bold font or a dot).
4. **Chat Screen:**
* This screen is for a one-on-one conversation with a friend.
* It should display the message history with that friend, with the user's messages on one side (e.g., right) and the friend's messages on the other (e.g., left).
* A text input field at the bottom for typing new messages.
* A "Send" button to send the message.
* Messages should appear in the chat view in real-time for both users.
Build a native mobile app focused on real-time text-based chat between friends.
The app should include the following screens and features:
1. **Authentication:**
* A simple user signup and lo...