Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: improve repo size labels and explanation #1248

Closed
Tracked by #2135
lidel opened this issue Oct 11, 2019 · 10 comments · Fixed by #2295
Closed
Tracked by #2135

feat: improve repo size labels and explanation #1248

lidel opened this issue Oct 11, 2019 · 10 comments · Fixed by #2295
Labels
area/screen/files Issues related to Files screen effort/days Estimated to take multiple days, but less than a week kind/enhancement A net-new feature or improvement to an existing feature P3 Low: Not priority right now status/ready Ready to be worked

Comments

@lidel
Copy link
Member

lidel commented Oct 11, 2019

cc #1042, #629

MFS can store files in "lazy" fashion, which means root is added to MFS, but children are fetched lazily, on first use.

Example

English wikipedia mirror is ~650 GB. Lazy pointer to it can be added to MFS instantly via:

$ ipfs files cp /ipfs/QmXoypizjW3WknFiJnKLwHCnL72vedxjQkDDP1mXWo6uco /en.wikipedia-on-ipfs.org

Problem

This feature of MFS creates a problem in WebUI, it looks like "Files" take more space than "entire repo":

Screenshot_2019-10-11  cohosting full - Files - IPFS

This will become a problem when we start taking advantage of this lazy mode in website cohosting (discussed in ipfs-shipyard/cohosting#6)

Solution?

We need to change the labels, make them more informative.
Below is a quick mock that illustrates what additional information needs to be conveyed.
The problem is that it does not look good, and we need to clean this up somehow.

Screenshot_2019-10-11  cohosting full - Files - IPFS(1)

Thoughts?

@lidel lidel added kind/bug A bug in existing code (including security flaws) area/screen/files Issues related to Files screen topic/design-ux UX strategy, research, not solely visual design labels Oct 11, 2019
@ericronne
Copy link

A few ideas which hopefully reflect the state of affairs accurately …

A - Modify two labels

Change the third and fourth labels to "all blocks" and "local repo" respectively, to help explain why the "files" number might be larger.
Artboard Copy 3

B - A plus a hover-triggered explainer panel

Add a feature which offers the user text explaining more about the numbers
Artboard Copy

C - A plus a click-triggered panel

Similar to above
Artboard Copy 2

If B or C seem worthwhile and tests well (test? yes let's!), i'll design the full panel. If none fit the bill, we can try something else …

@lidel
Copy link
Member Author

lidel commented Oct 14, 2019

I'd go with B or C: we really need an explainer for these values.
We already have a lot of whitespace on the top of Files screen, so B may save space, but I have no strong feelings here.

@ericronne small clarification: value behind blocks is "the number of blocks" (I have over 600 000 of blocks in my repo). The all blocks label suggests value represents total size used by blocks, but that value is already under local repo. Perhaps we should rename "pins" and "blocks" to something like # of blocks and # of pins to make it clear its not size, but a number of items?

@ericronne
Copy link

I wonder if simply removing all would help.

B

Artboard Copy

C

Artboard Copy 2

C feels more user friendly to me, but creates slightly more visual noise.

@lidel
Copy link
Member Author

lidel commented Oct 14, 2019

Yup, dropping all is better 👍 I also would go with C, just for clarity's sake:
B introduces problem of having 2019-10-15--01-20-40 and 2019-10-15--01-20-59 pretty close to each other.

@ericronne
Copy link

Do we have a panel design? If not, I’ll handle...

@lidel
Copy link
Member Author

lidel commented Oct 15, 2019

Not sure: we have a similar expandable thingy () on Settings screen:

Screenshot_2019-10-15 Settings - IPFS

when clicked it expands inline:

Screenshot_2019-10-15 Settings - IPFS(1)

We probably should have consistent design in both places (keep/update both), or change > to something else

@hsn10
Copy link

hsn10 commented Mar 31, 2021

I dont think this is a bug. It maybe confusing and need some UI adjust but behavior is correct.

@SgtPooki SgtPooki moved this to To do in IPFS-GUI (PL EngRes) Jul 19, 2022
@SgtPooki SgtPooki moved this from Needs Grooming to UX Design Needed in IPFS-GUI (PL EngRes) Dec 5, 2022
@SgtPooki
Copy link
Member

SgtPooki commented Dec 5, 2022

I personally like the B approach but would prefer a pattern of tooltip over numbers for more information.

@juliaxbow what do you think?

@SgtPooki SgtPooki added P3 Low: Not priority right now effort/days Estimated to take multiple days, but less than a week labels Dec 5, 2022
@SgtPooki SgtPooki moved this from UX Design Needed to Planned / Backlog in IPFS-GUI (PL EngRes) Jul 3, 2023
@SgtPooki SgtPooki added kind/enhancement A net-new feature or improvement to an existing feature and removed kind/bug A bug in existing code (including security flaws) topic/design-ux UX strategy, research, not solely visual design labels Jul 3, 2023
@SgtPooki
Copy link
Member

SgtPooki commented Jul 6, 2023

We will move forward with the C approach previously discussed:
image

@SgtPooki SgtPooki added the status/ready Ready to be worked label Jul 6, 2023
@SgtPooki SgtPooki changed the title Reported MFS size can be bigger than the size of repo feat: improve repo size labels and explanation Jul 10, 2023
@lidel
Copy link
Member Author

lidel commented Nov 14, 2024

Mind this issue was created in 2019 and these designs no longer reflect current UI or the way ecosystem and use cases evolved.

For reference, my understanding of the current state (2024-11-14) is:

Files

"Files" represents CumulativeSize from ipfs files stat /[path/in/mfs] (total size of DAG in MFS, does not include any additional blocks and low level pins that are not in MFS, and does not care if data is local or remote)

image

All Blocks

"All Blocks" is the "everything in local repo" (represents RepoSize from ipfs stats repo)

image

Honestly, it is not that bad.
We've eliminated "technical noise" like low level pin and block counts, and focused on size of the data.

Most users will not see first number being bigger than the second one, unless they manually imported a big DAG from IPFS, and did not preload it yet.

Perhaps the fix is simpler than one discussed in 2019? We could add a note at the end of "Files" explanation, that it is ok if this number is higher than the second one, and leave it as is.

See proposed fix in #2295

👉 In the future, we could detect if we are in a directory that is not fully local, we could split the first item into "Local Files" and "Remote Files" sizes, but that requires either hacking with block get --offline checks, or optimizing ipfs files stat / --with-local in Kubo.

But for now, I would not over-complicate this UI, and do #2295 instead.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/screen/files Issues related to Files screen effort/days Estimated to take multiple days, but less than a week kind/enhancement A net-new feature or improvement to an existing feature P3 Low: Not priority right now status/ready Ready to be worked
Projects
No open projects
Status: Planned / Backlog
Development

Successfully merging a pull request may close this issue.

4 participants