Customise GitLab UI to reflect enterprises reality

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

Problem to solve

The various business cases of customers imply various processes with specificities. Often, these specificities could be handled by changes in the UI. Some of these specificities could be useful for all customers, some others, only for some customers.

Customers want to customise GitLab's user interface to add functionality to meet specific business and team requirements.

Some customers currently do this with an in-house Chrome (or Firefox) extension.

The problem is that it is complicated to deploy an extension to all users. It would be more accessible and valuable if they could add customisations directly from GitLab.

user story
who as a Project Manager,
what I want that the developers follow our internal processes entirely from GitLab
why so I am sure that GitLab is the single source of truth
user story
who as a GitLab Administrator,
what I want to be able to add UI features at an instance, group or project level
why so I am sure that the GitLab users will use it efficiently, and I will ease their day to day job

Intended users

Proposal

One possibility would be to be able to configure additional inclusions of JavaScript files, which would be evaluated at the end of the page.

We could imagine a section like "System Header" at the instance/group/project level to define a link to the script. We would also need an API to be able to update the scripts.

image

The scripts will allow interactions with the DOM of the web page.

Existing example:

  • The Gitpod extension versus the native GitLab button "Open in Gitpod"

An existing customer example (solved with a browser extension):

The "Open in SquareDesktop" button allows you to open a merge request in their In-house app". They put it on projects and merge requests and pipelines:

image

Edited by 🤖 GitLab Bot 🤖