firezone icon indicating copy to clipboard operation
firezone copied to clipboard

feat(portal): Show clients peek on actors index

Open AndrewDryga opened this issue 1 year ago • 1 comments

We will show up to 5 recently started client icons and a status for them as a green dot badge (no dot when it's offline to keep things simple). Additional details are available on hover.

1 2

I also extended the Clients table on "Actor" view page to match the "Clients" index view.

AndrewDryga avatar Oct 18 '24 21:10 AndrewDryga

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
firezone ✅ Ready (Inspect) Visit Preview 💬 Add feedback Oct 28, 2024 9:57pm

vercel[bot] avatar Oct 18 '24 21:10 vercel[bot]

@jamilbk it doesn't break but I agree this is one of the busiest tables.

The most overloaded here is the group list. We already have an issue turning that into a count, which will save a ton of space.

I think we can merge this (b/c customers are asking for this - they want to see which clients actors have) and solve the clutter in a separate PRs for #7116 and #6742.

Perhaps we can simplify the column to just Online clients and show those, without needing to overlap the green indicator dot.

The customer request was to show all clients with their status, online-only ones will still require the same space (same table column width) but won't be as informative. We also won't show more than 5 most recently connected ones and use existing peek component for the rest, in case there is an account with a lot of them (eg. fails to persist file ID or service account running on VM without persistent storage). On average actor has 1.8 clients.

AndrewDryga avatar Oct 22 '24 18:10 AndrewDryga

b/c customers are asking for this - they want to see which clients actors have

One question that comes to my mind is, "are customers asking to see this in an index view or do they just need to be able to see it somewhere (like a 'show' view)?"

Another thought...would it make sense to have the clients column be a count and then when hovered over/clicked it could show a list of clients?

bmanifold avatar Oct 22 '24 18:10 bmanifold

@jamilbk everything that is left is your approval :)

AndrewDryga avatar Oct 23 '24 16:10 AndrewDryga

I think we can merge this (b/c customers are asking for this - they want to see which clients actors have) and solve the clutter in a separate PRs for https://github.com/firezone/firezone/issues/7116 and https://github.com/firezone/firezone/issues/6742.

Were you planning to deploy this before fixing it? I think given the clutter in this view now, I'm not sure it's very usable? I thought we were just going to modify the clients table as per feedback here: https://firezonehq.slack.com/archives/C06L41XN05T/p1729238260996539?thread_ts=1729068622.969759&cid=C06L41XN05T

I.e. really just adding sort by actor. Collapsing into a single row in the client table isn't a high priority since most users will only have one, maybe two clients. Once you sort by user, you can easily see which clients belong to which user and how many.

Here's how busy this table will be:

378012828-101ff122-26e2-4282-ae1d-073b4eba9c56

jamilbk avatar Oct 23 '24 17:10 jamilbk

Another thought, it might be worth adding more realistic data to seeds for design / UI development.

jamilbk avatar Oct 23 '24 17:10 jamilbk

Here are a few more screens. The first is more realistic data on my 13" Macbook screen size. The second is before our breakpoint that collapses the sidebar. I think layout will be broken for some users/customers:

Screenshot 2024-10-23 at 11 02 01 AM Screenshot 2024-10-23 at 11 03 08 AM

jamilbk avatar Oct 23 '24 18:10 jamilbk

@jamilbk Is it better now? Implemented https://github.com/firezone/firezone/issues/6742 and resized the columns. The seeds are now both more realistic and more random.

Screenshot 2024-10-25 at 3 53 22 PM Screenshot 2024-10-25 at 3 51 57 PM

AndrewDryga avatar Oct 25 '24 22:10 AndrewDryga