readthedocs / ext-theme

Read the Docs drop in replacement site templates
2 stars 2 forks source link

Show project privacy level #303

Open ericholscher opened 7 months ago

ericholscher commented 7 months ago

Currently there's no indication on project listing pages, or on the project detail page of the project privacy level. We should likely copy what GH does here, and show a 🔒 or 🔓 icon next to the project name. Hopefully the icons are a bit more obvious than the emojis here though!

agjohnson commented 7 months ago

The project detail page could mention this in the project header, along with the other labels

The list views try to avoid displaying too much metadata about projects, so I might come back to a visual addition. Instead, other list views use filters to add actual sorting/filtering on these fields. Project privacy should be a filter field in those listing views.

One other area this metadata should be surfaced is in the popupcard elements, which would be viewable in listing pages on hover.

agjohnson commented 7 months ago

Actually, thinking about this more, I'm not sure how/if we should communicate the project level privacy setting.

Displaying the project privacy level at the listing level makes this setting seem as important as version privacy -- version privacy is also listed at the listing/detail level. But a public project means something different than a public version and we should be careful not to confuse the user here.

The logic I was describing in chat is that if a user updates project level privacy, version privacy and the documentation authorization decision are not affected. That is, public versions remain publicly available after changing this setting to project private privacy level.

What is affected is the default version privacy level for new versions (?) and the dashboard visibility. I think this should be represented somehow, but I think it's worth using different patterns for this than the patterns used to describe documentation authentication.

Clearer language than public/private helps:

It is difficult to communicate "project dashboard" vs "documentation" however. For that, I'm saying we should be careful with how we surface this information.

What we could use is a project level description of the version privacy level:

There are a few ways we could surface this information, maybe even on listing views.

ericholscher commented 7 months ago

Yea, I could see 3 states:

But agreed overall it's a bit confusing given 2 levels of privacy.