jwr1 / interstellar

An app for Mbin and Lemmy, connecting you to the fediverse.
https://kbin.earth/m/interstellar
GNU General Public License v3.0
49 stars 6 forks source link

UI overhaul needed #60

Open jwr1 opened 2 months ago

jwr1 commented 2 months ago

Description

Interstellar desperately needs a UI overhaul; some parts of the UI are overly cramped, some parts are unintuitive, and many parts the visual aspect could be improved as they just don't look good. I'm no graphic/ui designer, so if there's anyone that would like to help, please do so, other wise, I'll need to take inspiration from other fediverse/forum apps that actually do look good.

Several people have mentioned wanting a "compact" mode. I'm not exactly sure what they are thinking of (especially since we already have a "compact preview" option), but it's something to keep in mind (maybe less padding between cards?).

Related issues:

AndrewMathis13 commented 2 months ago

I can play around with things this weekend and try to rework the interface to simplify it a bit. I don't know enough about programming to actually write code for any of the changes, but I can definitely provide mockups with dimensions for anyone else who has the time and technical know-how to implement them.

jwr1 commented 2 months ago

That would be great! Any help is welcome :)

I just want to put this here, but I think the UI design from the vucuit app looks nice. There are several Lemmy apps we could take inspiration from as well.

dalz commented 2 months ago

Regarding the compact view, compare Interstellar (with compact preview):

Screenshot_20240913-000449

with Redreader:

Screenshot_20240913-000401

Redreader fits 7 posts with full titles, Interstellar 2 with truncated titles.

jwr1 commented 2 months ago

@dalz, you're right. I see what you mean. Even setting the Media Position setting to the right side (instead of top) doesn't help.

AndrewMathis13 commented 2 months ago

That's kind of where I was going too. I played around with it a little, but I couldn't find a way to reduce the size of the standard card enough to justify a compact mode as-is. So, I decided to instead just strip it down to the basics and rearrange the layout from there, and I think this works a lot better.

Interstellar-App-New-Card-Design-v3
dalz commented 2 months ago

@AndrewMathis13 looks great! I'd suggest removing the space around the cards too, or at least have an option to do so, to not waste any space.

I'd like to note also that the top and bottom bars take up a lot of space and do not go away while scrolling. IMO they should aleays hide on scroll, even on the standard layout. It would be nice if there was an option to remove them, maybe moving their content to the floating button or sidebar, but it could be low priority.

jwr1 commented 2 months ago

Agreed, @AndrewMathis13, that looks great! When I get a chance, I'll see what I can do to replicate it in code.

@dalz, I know this wouldn't be the same as hiding the top part, but you can at least hide the "tabs" part of the top bar in the settings, so that it looks like this instead:

image

If you want to do that, go to settings, then Actions and Defaults, then change the "Set Filter" location to be anything else.

AndrewMathis13 commented 2 months ago

Great! Below I'll include the measurements I was working with for both the page itself and both styles of cards to hopefully make implementing them easier.

Also, the search page still needs a few more adjustments, but after that I'll start working on the profile and settings pages this weekend.

Interstellar-Home-Page-Design-v1
AndrewMathis13 commented 1 month ago

It took me a little longer than I originally anticipated, but I've finally finished the explore, notifications, and chat pages. I'm still working on the settings page, and the profile page needs a few more tweaks, but then I can work on finishing up the other miscellaneous pages as well as the compact mode and a better optimized layout for large screen devices.

For the explore page, I thought it would be better to condense it all down into one page, and then provide the user with options to filter through the different search types. If there is some way to merge all the search functions into one bar with one singular feed of results, with the option to then filter by result type if desired similar to how search works on Mastodon apps, I think that would be optimal. However, if that's not possible, then we can just remove the "all" filter chip, and just use the other buttons to switch between the different search types, but ideally still keeping everything on the same page.

No big changes for the notifications page, just a few touchups here and there. However, I did kind of make a pretty big overhaul to the chat page lol. But the redesigned chat page isn't functionally any different than it is currently, so, with the exception of the updated text input field, it should only be visual changes. But if the updated design for the text input field, or honestly even the whole chat page redesign, ends up being too difficult to implement in code, I can definitely work around it and try to come up with something else instead.

Interstellar-Explore-Page-Design-v1 Interstellar-Notification-Page-Design-v1 Interstellar-Messages-Page-Design-v1
jwr1 commented 1 month ago

Wow, that looks amazing! I think it totally makes sense to condense the Explore page; a lot of the filtering/inputs/interface was the same between the tabs anyway. I also like the design overhaul for the messaging page; it makes it a lot more consistent with other chat interfaces.

Unfortunately, for the Explore changes, you actually have to search something first before it will show anything for the "All Search" (that's just how the API works), whereas for the "Magazine Search", "People Search", and "Domain Search", you actually don't have to search anything and it will show you a full list of magazines, people, or domains. So maybe we could still have the "All", "Magazine", "People", and "Domain" filters as you have in the design, but we could have the "Magazine" filter enabled by default, and then if someone switches to the "All" filter, we could show a message saying they have to enter something in the search field first.

Overall, I love the designs, and I can't wait to implement them! I just need to see when I actually have time to do so.

jwr1 commented 1 month ago

I mostly got the chat/messaging interface done. I did add a few things, such as the timeline for date & time, and grouping messages from the same person. I still need to work on the input field though; I'm just not exactly sure what to do with it, since the current version has a lot going on in it. I could leave it as is, or I could make it so it's just a simple text field that expands into the whole editor when a button is clicked on (like how it is in the design).

Anyway, here are some screenshots: ![image](https://github.com/user-attachments/assets/d81f8892-5848-41f8-bffd-e55638ab2627)
jwr1 commented 1 month ago
Here's the new notifications screen: ![image](https://github.com/user-attachments/assets/9ca5ea6f-d05c-4676-98e5-f5d92293aa4e)
And the Explore page (I still need to work on the info button): ![image](https://github.com/user-attachments/assets/35ef73b5-42c0-4a29-bfc0-3494229061fe)
AndrewMathis13 commented 1 month ago

Wow, it's looking great. Hopefully it hasn't been too much trouble to implement. Also, I think adding timeline labels to the chat interface was a great idea!

I've also (mostly) finished with the user's profile page, though I do still need to make a few more tweaks to the page when viewing someone else's profile.

Interstellar-Profile-Page-Design-v1
AndrewMathis13 commented 1 month ago

Okay, the Settings page is done. I took inspiration from the Moshidon Mastodon client and regrouped the various settings into six different groups and gave each of them their own sub-page. All of the settings options have the exact same design specifications, 12dp top and bottom with 16dp spacing on the left and right and in-between elements, unless otherwise noted in the images below.

While I was redesigning the settings page I thought of some functional changes and some additional settings options that other fediverse clients have that I thought Interstellar could also benefit from:

Interstellar-Settings-Page-1-Design-v1 Interstellar-Settings-Page-2-Design-v1
jwr1 commented 1 month ago

@AndrewMathis13, wow, that looks amazing and very thorough! I really appreciate the help (and all the past designs as well)! Interstellar is already looking much better.

I do have a few things to note, though:

Wow, that felt like a lot; hopefully it's not too much feedback :) You don't have to redesign anything (I can make whatever changes we want as I go); I just wanted to get your opinion on those points (as the designer). And again, I want to thank you. There's no way I could ever get an app to look this good by myself :)


Unrelated to that, I have been wanting to mention a few other things:

I know I had a few more questions about the current designs, but I'll try to ask them once I remember again.


Even more unrelated, but if you'd like to keep helping with designing, after you've already finished all the existing UI, I think it would be great if we had a welcome screen for Interstellar (for when a user first starts the app). It could include maybe some common settings to easily configure, setting their preferred language, some info about Interstellar and the fediverse, and also let you add your first account. That's just an extra, though, totally unnecessary if you don't want to.

Also, we could keep chatting here, but it would probably be easier to do it on Matrix if you wanted (I'm fine with either one though).

AndrewMathis13 commented 1 month ago

Thanks, I’ve really enjoyed working on the redesign. Also it’s totally not too much feedback, definitely keep it coming. It only makes the designs better.

Screenshot_20241011-180934-edit

Additionally, I would love to design a welcome screen for Interstellar. I still need to finish the expanded posts/comments view, make a few more changes to the profile page when viewing someone else’s profile, update the magazine page first, and then, as long as I’m not forgetting something else, I can start on the welcome screen. I do also need to make a few tweaks to the whole layout for large screen devices, but I’ll do that last.

Again, thanks for all of the feedback, it really helps. Also, we can totally move this conversation over to Matrix if that’s easier for you.

jwr1 commented 1 month ago

Alright, that all sounds good to me :+1:.

I just made a new matrix room dedicated to development that we could chat in: https://matrix.to/#/#interstellar-development:matrix.org. If I have any small questions while implementing things, I'll just ask you there if that's fine (and vice versa).

melroy89 commented 1 month ago

@AndrewMathis13 wow again very impressive! Your work doesn't go unnoticed!

jwr1 commented 1 month ago

@AndrewMathis13 wow again very impressive! Your work doesn't go unnoticed!

Yes indeed! It's pretty amazing.