Organizations UX Themes
UX Themes
Sharing
Terminology clash between invited and shared
- This problem gets worse if we were to introduce sharing
- 2 concepts adding members to give them access vs adding the content of an object to another object
Display
- The layout of subgroups and shared groups vs members is difficult to understand
Teams
-
The concept of teams is possible today but is difficult to understand how to implement
-
Teams are a desirable way of injecting a set of users rather
Member vs Group
- Inviting a member makes them a direct member
- Inviting a group makes them inherited
- This inconsistency becomes a problem when the group that did the inviting is then shared
- The direct members are shared
- The inherited are not
- This makes it difficult to understand what will happen
Group/Project Access
Difficult to see who the Members are
- Can not see members of shared groups
- Members show a lot of inherited members that do not actually participate in the group/project
- Filtering by direct can often be 0
- Members do not aggregate up so it does not accurately inform billing
- Could be solved with an Access vs membership model (complicated large change)
- Could be improved with a participation component as a sort/filter
Lack of internal visibility
- Scoped to instance not org so internal is not possible on .com
- Requires overuse of private
Group/Project Page
Tabs and filters
- Projects have confusing tabs
- Double-tabs is a bad pattern
- The interaction between the tabs is confusing
- The tabs themselves are not the right groupings
Search and filter
- Groups and projects pages use a non-standard search and filter pattern
- Filters available are not meeting user needs
View combinations
- Projects and groups are forced to be navigated separately, there may be an opportunity to combine these in a way that gives the user the necessary context to help determine tree structure.
Participation as a sort
The membership model and specifically the inheritance often result in users being presented with groups/projects that have little or no association. This could be solvable by changing the membership model but is likely a complicated solution. Providing a sort option possibly as the default that includes the user's participation is an effective way of presenting more relevant results to users. This could reduce the "I am lost feeling" users often describe.
Settings
Self-managed vs SaaS
There is a large set of settings available on self-managed that are not available to SaaS.
- Each setting has a specific value and would need to be evaluated individually
- To achieve parity between self-managed and SaaS, allowing both to use organizations as the primary management system would require all settings to be migrated.
- Need to establish or likely formalize an existing pattern for settings that are set at the organizational level and how they impact group/project settings
- Adding clarity to what settings are applied where would simplify compliance and administration.
Organization
Description
If a user were to navigate to an organization, they need to see something. Admins will likely see settings, but the non-admin users will likely not have access to settings so all they would be able to see are the assets contained by the organization. This could be limited to groups, groups/projects, but likely has added value, and if they can see additional views similar to your work section, but with the context of the organization rather than the user.Description
Unless it is determined it is not possible to see items from more than one organization at a time (likely not a desirable experience), we will need to account for the presence of organizations in several places in the UI. This could be as metadata and/or as filters.Description
We will need to include organizations in the navigation and provide a way of navigating between them.Description
This means those within the container will need some visibility of it, but will likely also need some level of access control. Our current membership model will not work for this because its inheritance would result in every user being in every group/project and essentially negating the membership model. We will either need a modified membership model or a user concept similar to instance admin. This model needs to include both levels of admin and non-admin.We will also need a mechanism for granting access. This includes inviting members, inviting groups, user creation, and the associated controls to govern this behavior.
User management
Description
We need to define the users. What a user is in regards to billing. How they are established (related to access) but also user creation and determining a mechanism to gain administrative control over a given user.Billing
Description
Assuming organizations will become the only billable entity, we will need a place to display usage and manage settings.Combining top-level groups
Description
Many "organizations" GitLab included have multiple top-level groups. Since they have independent billing and potentially different admins, combing them together in a single organization could be challenging. If we are unable to this, the separation introduced by Pods may be detrimental in that they will have multiple organizations. There are 2 paths to correct this: - Find a way to do this programmatically (likely not possible because or separate billing and admins) - Build a mechanism to move or associate top-level groups into a single organization.Non organization
Description
We need to account for the administration of items outside of any organization. Define interaction, inheritance, and user flow for accessing and managing.Settings
We need to define an inheritance mechanism.
-
Invitation/Transfer
- #285592+
- #285588+
- Request to join email should confirm status onc... (#18899 - closed)
- Transfer project namespace field only matches a... (#218965 - closed)
- Transfer failure message is not clear enough (#27843)
- Add who and why to project movement email notif... (#27665 - closed)
- Add form validation when inviting users to Grou... (#228679 - closed)
- #285587+
- #285588+
- #285592+
- Add Ability for User to Invite non-Member Group... (#356631 - closed)
- #361620+
- #364512+
- #365051+
- Project/Group Transfer Namespace Dropdown Posit... (#381376 - closed)
- #389286+
- Group transfer: Enter invalid namespace or noth... (#393198 - closed)
- Add on hold status for access requests (#404076 - closed)
-
Visibility
- Allow group level restriction of visibility levels (#7401)
- Make the default access level configurable in g... (#16689 - closed)
-
Access
- Share private project via URL (#15549)
- Rethinking project visibility (#16328)
- See and manage project and group shares from th... (#16487 - closed)
- Can't share a project with a group I'm not a me... (#16880 - closed)
- Adding a user to group with a lower authorization (#17605 - closed)
- External Users will not inherit project limits ... (#17864)
- Member shouldn't see parent groups if he/she as... (#20858)
- Permission to view group image (#20913 - closed)
- User groups without project groups (#24752 - closed)
- Wrong message when adding user to project while... (#26417 - closed)
- Option to automatically create namespaces under... (#214041)
- Add warning to subgroup settings when project s... (#343113 - closed)
- Permission locks (member lock, share with group... (#343115)
- Add prompt for users removing themselves from g... (#361740 - closed)
- Project Member max role change bug (#364092 - closed)
- #364785+
- Notice to the share group's owners that "you ha... (#378625)
- Notice to the shared group's owners that "you h... (#378626)
- Evaluate usage of "sharing" and "invite" in gro... (#379683)
-
Hierarchy
- Investigation - Inheritance behaviour across Na... (#343316)
- Show owners of shared groups which groups/proje... (#378629 - closed)
- UX Theme (Example): Ensure members have the abi... (#381346 - closed)
-
Members
- Allow assigning additional groups from Admin Ar... (#16265)
- Show 'add member' section in member settings ev... (#3576 - closed)
- Enable automatic group membership based on emai... (#1953 - closed)
- Make it easier to manage inactive users (#14901)
- Consolidate admin / user setting pages for proj... (#15733)
- It's hard to find your users (approvers, assign... (#17403 - closed)
- #17792+
- Show group membership even if member of project... (#18973 - closed)
- UX: Create a new team (#21779 - closed)
- UX: View and edit team details (#21780 - closed)
- UX: View which teams can access a group or project (#21781 - closed)
- UX: Add/remove members to/from a team (#21782 - closed)
- UX: Remove a team from a group or project (#21783 - closed)
- Only 20 users are displayed (#22056)
- #24290+
- Project members: Cleanup Markup and Code (#30721 - closed)
- Deleted Users still displaying in user counts o... (#35772)
- Members from shared projects or shared groups a... (#219230 - closed)
- Ability to hide group membership to all but gro... (#227282)
- Update group project removals to use a confirm ... (#232482 - closed)
- Add column sorting to tables (#232664 - closed)
- Wrong Max Role for Members Invited through Grou... (#337086 - closed)
- Fix button inconsistencies in project/group mem... (#350215 - closed)
- Add user option to list users under namespace (#351151)
- Add remove user option to namespace (#351217)
- Extend Group level ban feature for public proje... (#351343)
- Show groups tab on Members page when there are ... (#360926)
- Bulk removal of members in projects/groups - fr... (#364675)
- Bulk changes to Max role of members in projects... (#364676)
- Change the sorting UI of member list on project... (#381691 - closed)
- Add option to export all members contained by a... (#390677 - closed)
- Members of groups shared into a project are not... (#392629 - closed)
- Improved view of members (#402250 - closed)
-
Projects
- It is not obvious that a project permission can... (#16280 - closed)
- Release restrictions on project names (#16464)
- Display the date project was created (#19452 - closed)
- Improve validation message "Path can contain on... (#20582 - closed)
- Reorder project badges (#20752)
- Project templates: Show if a group is selected ... (#23252 - closed)
- Background color of project home is auto-picked... (#25397 - closed)
- "New project" wizard flow (#25608 - closed)
- Further product discovery for 'new project' flow (#25647 - closed)
- Disable project avatars (#27597 - closed)
- API: Add additional fields for "New project" wi... (#26469 - closed)
- Display '#' instead of 'Project ID:' in projects (#27570 - closed)
- Project homepage > Quick start project buttons ... (#30935)
- Remove project stars when reducing visibility o... (#37367)
- Provide a "New Project Wizard" experience to le... (#199309 - closed)
- Customize Default View for Project Overview > D... (#211511 - closed)
- Add topic field in Create blank project form (#214765)
- Display `archived` mark in better place at Cont... (#232653 - closed)
- *Leave project* button too prominent (#321508 - closed)
- New "blank project" language and experience is ... (#332517 - closed)
- Increase visiblity for projects pending deletion (#344018 - closed)
- Add feedback to user when trying to push to a p... (#344023)
- Show in Activity when a group or project has be... (#349637)
- Limit "Your Projects" overview by projects I ow... (#362709 - closed)
- New project namespace selection is not intuitiv... (#368837)
- Add a project description during blank project ... (#370469)
- Allow editing of project description from the p... (#370470)
- Project name error wipes out edited information (#376707 - closed)
- Add support for "Sponsor" button (#378701)
- Proposal: Add a best-effort project export when... (#378797 - closed)
- #381261+
- Add a place to recover deleted groups in the Ad... (#396771 - closed)
- (Complete) deletion confirmation message differ... (#397029 - closed)
- Clean-up presentation of "pending deletion" tab... (#396773 - closed)
- Groups page has a "leave group" option, but pro... (#397030 - closed)
- Pending deletion message is different between g... (#397032 - closed)
- (Pending) deletion action is different between ... (#397033 - closed)
- Make confirmation modal consistent between grou... (#397039 - closed)
- Restore (deletion) action differs between group... (#397041 - closed)
-
Groups
- Create an option to archive/unarchive Groups (#15967 - closed)
- Warn if there are archived projects upon Group ... (#18069 - closed)
- Choose a parent group when creating a new group (#18465 - closed)
- Transferring ownership and demoting self in gro... (#19300)
- Subgroups dropdown looks like alignment bug (#19479 - closed)
- New design for group deletion confirmation on A... (#20479 - closed)
- Hide issue and merge request nav items from gro... (#20528)
- Make group names links when deleting account is... (#20579)
- Poor UX on creating New project/New subgroup on... (#21574 - closed)
- Adjust group/subgroup expansion in group lists ... (#23546 - closed)
- Improve group overview UI (#23570 - closed)
- Transferring groups does not warn in the same w... (#26383 - closed)
- UI for groups / projects shared with another gr... (#212548 - closed)
- #323520+
- Show all Visibility Level options in a group (#338507 - closed)
- Allow groups to set topics (#344457)
- Allow editing of group description from the gro... (#370467)
- Add a group description during group creation (#370468)
- API Support for Group Deletion Protection Settings (#371543 - closed)
- Add 'follow a group' button (#389214 - closed)
- Add a place to recover deleted projects in the ... (#396772 - closed)
-
Projects page
- Ability to sort /dashboard/projects list by gro... (#16771)
- "Trending projects" should include internal pro... (#17335 - closed)
- Group/Project filtering in the Groups/Projects ... (#21214 - closed)
- Add a filter to the personal projects overview (#22469 - closed)
- Modernize sorting and filtering in Your Work > ... (#25368 - closed)
- Improve archive information UI on project overview (#23667 - closed)
- Add project filter forms to "Contributed projec... (#23715 - closed)
- Project dashboard: Improve information architec... (#24036 - closed)
- Pinned projects/subgroups in groups (#17363)
- Further improvements to project lists UI (#25089 - closed)
- Improve discoverability of open source projects (#26095)
- Projects dashboard: use "by name" as default so... (#26287 - closed)
- Abbreviate long numbers in UIs tight on space (#26399 - closed)
- Make the links on the explore project page go t... (#27085 - closed)
- "Personal projects" should order by "Updated" (#29490 - closed)
- Searching for Groups and Projects by name shoul... (#212146)
- #368232+
- #368233+
- Tables do not show starred objects for groups c... (#373983 - closed)
- Add an empty state when groups search yields no... (#375012 - closed)
- Make finding subgroup members more obvious (#378002 - closed)
- Evaluate displaying groups, projects, and organ... (#378942 - closed)
- Rename the "Your projects" tab on the Projects ... (#381440 - closed)
-
Usability
- Add user-defined text to website title for bett... (#15075)
- Superfluous hint about creating groups when cre... (#15566 - closed)
- Add GitLab-wide predefined status messages (#23177)
- Add customizable predefined status messages (#23312)
- Status messages: Schedule setting and clearing ... (#23690)
- Create custom emoji on instance-level (#23717)
- Autocompletion of browser and emoji overlap in ... (#23756 - closed)
- Adjust the logic of the breadcrumb area to alig... (#358113 - closed)
- Add explanation to empty user chat accounts/nam... (#353383)
- GitLab knowledge architecture (#354875)
- Confusing behaviour when user project limit is ... (#367020 - closed)
- Reword error when user cannot create a project ... (#369496 - closed)
- Frontend: Provide a more helpful error messages... (#371960)
- Improve UI when using absolute dates (#398122)
-
Admin
- Display projects count by visibility level (#16059 - closed)
- Make the filters on /admin/users toggles instea... (#17705)
- Default sort options in the admin area (groups,... (#18089 - closed)
- Private repositories / groups are always access... (#18975)
- Allow customization in blocked message (#20560)
- Display banner letting user know they are viewi... (#20965 - closed)
- Improve settings pages design by prioritizing c... (#23483 - closed)
- After deleting a project, stay in the admin area (#27916 - closed)
- Add sortable columns to Admin > Users table (#238181 - closed)
- Update design of deletion modal for admin area/... (#321696 - closed)
- Admin / Users / User detail / Groups and Projec... (#339100)
- Add inline validation to admin deletion protect... (#364133 - closed)
- Create an empty state for Admin / User / Groups... (#372730 - closed)
- Disable topic creation for non-admin users (#399207)
-
Users
- Avatar dimensions for profile and projects (#17326 - closed)
- Make it easy to differentiate between a wider c... (#207118 - closed)
- Display a badge to indicate that a user is a Gi... (#212259 - closed)
- Improve removing user status with Busy checkbox (#290726)
- Show "Follows you" in the badge if the user fol... (#322168)
- Add a preference setting to ignore user statuses (#325289)
- Add discord username to profile settings (#329691 - closed)
- Member invitations - Improve how to identify us... (#349203)
- #351395+
- Improve UX for creating a personal profile READ... (#367263 - closed)
- Improve empty state for people who can't create... (#369360 - closed)
- "Out of office" indicator (#371718)
- Profile: move some functionality to overflow menu (#377397 - closed)
- Unable to see badge image options after uploadi... (#384524 - closed)
- Resolve cropped focus ring on Activity subscrib... (#384964 - closed)
- Better handling of the user status maximum char... (#391531 - closed)
- Handle duplicate/stacked achievements better (#398123 - closed)
- Add create achievement UI (#410003 - closed)
-
User profile
- User's Activity Filtering (#16930)
- Custom badges for user profile (#17056)
- Feature request: make profile contributions gra... (#18245 - closed)
- Exclude quotes / pictures from the excerpt show... (#18907 - closed)
- Project language stats overview on user profile (#21774)
- Pinned projects on user profile page (#21805 - closed)
- [Profile Page] Need to Display the Number of Co... (#21839)
- Better handling for profile settings URLs (#21974)
- Number of contributions in the last year (#22578)
- Follow-up: Include private contributions in use... (#24024)
- User profile: Show more than last 12 months con... (#24264)
- Introduce autosaving for changes made on user s... (#24892)
- Activity Overview notes difficult to read (#25171 - closed)
- Enhanced activity feed UI in contribution graph... (#25702)
- Current status maximum length check and ui feed... (#26114)
- Determine from the profile the contributions ty... (#28014)
- Non-sense validation error on profile page (#31024)
- Projects sorting options on user profile page (#241741 - closed)
- Feature Request: Add more support for profile c... (#273071)
- Hide archived projects from user page (#326308 - closed)
- User contribution calendar is not localized (#326981 - closed)
- User Profile > Projects Vue: Consolidate sideba... (#359031)
- Contribution chart > UI redesign (#359030)
- Profile > Reconfigure layout (#360002 - closed)
- Evaluate information displayed on the user prof... (#370125)
- User profile page > Show profile header only in... (#396511)
-
Settings
- Remove possibly unused key (#346087 - closed)
- Create new settings logic and architecture for ... (#300554 - closed)
-
Organizations
- 🎨 Design: Organization "front page" (#346584 - closed)
- #351330+
- 🎨 Design: Merged project and group "front page" (#352165 - closed)
- 🎨 Design: Cross-namespace navigation (#343220)
- Consolidate Organization problem statements (#360271)
- Explore organization experience options (#366202 - closed)
- 🎨 Design: Organization admin navigation flow (#377477)
- 🎨 Design: Transition to Organization for self-m... (#383267)
- 🎨 Design: Bring users to organizations (#390205 - closed)
- 🎨 Design: Navigating within organizations (#396719 - closed)
- 🎨 Design: Transfer groups to organizations (#396723 - closed)
- 🎨 Design: Organization administration of items ... (#396725 - closed)
- 🎨 Design: Organization Cells impacts on other p... (#396726 - closed)
- 🎨 Design: Organization activity page (#406612 - closed)
- 🎨 Design: MVC organization groups and projects ... (#406613 - closed)
- #406614+
- Discussion: Organization roles and policies (#408154 - closed)
- 🎨 Design: Organization creation flow (#410343 - closed)
- 🎨 Design: Introduce the ability to remove an or... (#410604 - closed)
- Design: Organization admin functionality for it... (#379040 - closed)
- Organization user journey videos - membership (#384071)
- Discussion: Rollout for Organizations (#402771 - closed)
-
Uncategorized
- Organizations UX Themes (#393775 - closed)