Frontend Screens ================ Login / Title Screen -------------------- - First screen on launch. - Handles user authentication and routes into the app. Navigation Shell ---------------- - Top navigation bar provides shortcuts to: - Settings Screen - Profile Screen - Bottom navigation bar provides tabs for: - Home Screen - Messages Screen - Notifications Screen Home Screen ----------- - Displays nearby groups. - Provides an entry point to the Map Screen. Map Screen ---------- - Displays a map centred on the user’s current location. - Allows the user to: - Adjust the search radius - Search for groups - Create a group at the selected location Messages Screen --------------- - Displays group chats and direct messages. - Sorts conversations by most recent activity. - Opens the selected chat when tapped. Notification Settings Screen -------------------- - Displays a list of notifications. - Navigates to the related chat, profile, or DM Request Screen when a notification is tapped. Profile Screen -------------- - Displays the logged-in user’s profile. - Allows editing of avatar and bio. - Provides access to the Friend List Screen and group chats. Settings Screen --------------- - Displays the settings menu. - Includes navigation to the following screens: - Blocked users - Privacy - Notifications - About - As well as the 'Logout' button Blocked Users Screen -------------------- - Displays blocked users. - Allows users to unblock previously blocked users. Privacy Settings Screen ----------------------- - Allows users to control whether their online/offline status is visible to others. Notification Settings Screen ---------------------------- - Allows users to control app notification preferences. About Screen ------------ - Displays app information and usage overview. Friend List Screen ------------------ - Displays the user’s friends. - Opens a direct message with the selected friend. Friend Profile Screen --------------------- - Displays a friend’s profile. - Includes shared media, shared links, and block/unblock actions. Non-Friend Profile Screen ------------------------- - Displays a non-friend’s profile. - Supports: - Friend requests - Direct message requests - Blocking - Reporting Group Chats List ---------------- - Displays joined group chats. - Opens the selected group chat. Group Chat Screen ----------------- - Displays a group chat conversation. - Allows: - Sending messages - Editing messages - Deleting messages Direct Message Chat Screen -------------------------- - Displays a direct message conversation. - Allows: - Sending messages - Editing messages - Deleting messages - Opens a member's profile when clicking on their name or avatar. Group Info Screen ----------------- - Displays details and member list for joined groups. - Opens a member's profile when clicking on their name or avatar. Non-Member Group Info Screen ---------------------------- - Displays group details for non-members. - Allows the user to join the group. Create Group Screen ------------------- - Displays a form for creating a new location-based group. DM Request Screen ----------------- - Displays incoming direct message requests. - Allows accepting or declining requests.