From b95cc7dd5424f4765f4efb107b69fcc993701170 Mon Sep 17 00:00:00 2001 From: nmemmert <67961292+nmemmert@users.noreply.github.com> Date: Mon, 31 Aug 2026 09:39:36 -0400 Subject: [PATCH] feat: mobile-responsive layout and chat navigation - Bottom tab bar on mobile instead of side icon strip - Conversation list and chat view are mutually exclusive on mobile - Back button in chat header returns to conversation list on mobile Co-Authored-By: Claude Sonnet 4.6 --- frontend/src/components/Layout.tsx | 43 +++++++++++++++++++++++------ frontend/src/pages/MessagesPage.tsx | 18 ++++++++---- 2 files changed, 47 insertions(+), 14 deletions(-) diff --git a/frontend/src/components/Layout.tsx b/frontend/src/components/Layout.tsx index af4a5c6..9ad48d0 100644 --- a/frontend/src/components/Layout.tsx +++ b/frontend/src/components/Layout.tsx @@ -20,11 +20,11 @@ export default function Layout() { return (
- {/* Sidebar */} -
{/* Main */} -
- +
+
+ +
+ + {/* Mobile bottom nav */} +
); diff --git a/frontend/src/pages/MessagesPage.tsx b/frontend/src/pages/MessagesPage.tsx index 2607796..d9381e0 100644 --- a/frontend/src/pages/MessagesPage.tsx +++ b/frontend/src/pages/MessagesPage.tsx @@ -1,7 +1,7 @@ import { useState, useEffect, useRef } from 'react'; import { useParams, useNavigate, Link } from 'react-router-dom'; import { useQuery, useQueryClient } from '@tanstack/react-query'; -import { Send, Plus, Search } from 'lucide-react'; +import { Send, Plus, Search, ArrowLeft } from 'lucide-react'; import { formatDistanceToNow } from 'date-fns'; import api from '../lib/api'; import { useAuthStore, useCryptoStore } from '../lib/store'; @@ -171,8 +171,8 @@ export default function MessagesPage() { return (
- {/* Conversation list */} -