You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I want to suggest a few UX improvements and fix a few issues with the chat sidebar. I already have code ready. Happy to open a PR if my suggestions look good to you, but would love to hear feedback first (especially regarding "Chats mixed into navigation").
What I noticed
Chats mixed into navigation
The chat list is styled the same as the rest of nav (left gap, vertical line), so "New Chat" reads as a parent group with recent chats as its sub-pages. But "New Chat" is an action, not a category, and the chats aren't sub-pages. This is also not how ChatGPT or Claude look, and that's where users spend most of their time.
Titles generation is slow
A new title isn't generated until the full response is received from the server. So when you create a new chat, you see "New Chat Session" for a while. Once the browser receives the full response, the frontend uses the first message to name the chat temporarily, and only then triggers AI title generation.
Pinning chats can hide new conversations
There's a limit on how many recent chats are visible in the sidebar. If a user pins 3 chats, the slots are full and new conversations never show up in the sidebar.
Active chats get buried in the sidebar
There's a mechanism to stabilize sidebar order and avoid jumping. Seems like it was added because opening (renaming, model switch) was bumping updatedAt and causing the sidebar to reorder. But this makes it too strict: active chats don't surface after a real message exchange either and get buried under "More...". Which means you can't rename or delete them, since this action menu is only accessible through the sidebar.
What I suggest
Chats mixed into navigation -- use different styling, left align chats with "New chat" button. Add gap between chats section and the rest of nav. Chats could move into their own full-height panel later, but I'm not familiar enough with the product to suggest bigger changes.
Pinning chats can hide new conversations -- extract to a separate section. Also I don't think the number of pinned chats should be limited. Users pin them manually and can decide if they occupy too much space.
Titles generation is slow -- this could be solved with a little refactoring, when new chat is created, there's already a message on a client, so it can be used to give the chat a meaningful name right away. No need to wait for BE response.
Active chats get buried in the sidebar -- use less noisy field for ordering, my suggestion is to introduce lastMessageAt on BE, and remove useStableConversations entirely
I want to suggest a few UX improvements and fix a few issues with the chat sidebar. I already have code ready. Happy to open a PR if my suggestions look good to you, but would love to hear feedback first (especially regarding "Chats mixed into navigation").
What I noticed
Chats mixed into navigation
The chat list is styled the same as the rest of nav (left gap, vertical line), so "New Chat" reads as a parent group with recent chats as its sub-pages. But "New Chat" is an action, not a category, and the chats aren't sub-pages. This is also not how ChatGPT or Claude look, and that's where users spend most of their time.
Titles generation is slow
A new title isn't generated until the full response is received from the server. So when you create a new chat, you see "New Chat Session" for a while. Once the browser receives the full response, the frontend uses the first message to name the chat temporarily, and only then triggers AI title generation.Pinning chats can hide new conversations
There's a limit on how many recent chats are visible in the sidebar. If a user pins 3 chats, the slots are full and new conversations never show up in the sidebar.
Active chats get buried in the sidebar
There's a mechanism to stabilize sidebar order and avoid jumping. Seems like it was added because opening (renaming, model switch) was bumpingupdatedAtand causing the sidebar to reorder. But this makes it too strict: active chats don't surface after a real message exchange either and get buried under "More...". Which means you can't rename or delete them, since this action menu is only accessible through the sidebar.What I suggest
this could be solved with a little refactoring, when new chat is created, there's already a message on a client, so it can be used to give the chat a meaningful name right away. No need to wait for BE response.use less noisy field for ordering, my suggestion is to introducelastMessageAton BE, and removeuseStableConversationsentirelyDemo 🚀
chats_ui_demo_small.mp4