How to integrate a custom differ into GitLab merge requests view?


I want to integrate a custom diffing mechanism for particular file formats. Ideally there would be a link in the merge request view ( Changes ) at the top of some files (see lettering Custom Diff in the following screenshot):

When the user clicks on the link, they are directed to another web application which gets the URLs of the 2 file versions (from the parent branch and the feature branch), and displays the differences visually.

Right now I see following options:

  1. Changing GitLab’s code itself.
  2. Creating a GitLab plugin.
  3. Somehow use Gitaly to modify the way the diffs are presented.

How can I do it? What approach is the best? Is there, maybe, a standardized way to integrate custom differs into the merge request view (apart from this open issue)?

Thanks in advance

Dmitrii Pisarenko