Skip to content

Issue List - Vue Issue List API fetch performance optimization

Background

Our Q3 OKR in product/dev includes a goal to improve the LCP for our issue list (&4279).

Problem

The refactored issuable Vue component significantly increases the LCP because fetching the issue list data doesn't immediately begin as the page starts loading.

image__1_

Comparison of LCPs (in sec) between the current HAML issue list and the Vue issue list

LCP benchmark against https://gitlab.com/postmarketOS/pmaports/-/issues

Tracked at https://dashboards.gitlab.net/d/000000044/sitespeed-page-timing-metrics?orgId=1&from=now-30d&to=now&var-base=sitespeed_io&var-path=desktop&var-group=gitlab_com&var-page=GitLab_Issue_list&var-browser=chrome&var-connectivity=cable&var-function=median

Local sitespeed.io runs (as of Sep 7)

LCP (in sec)
HAML issue list 1.270
Vue issue list 2.636

Possible Solutions

  1. Use startup.js for issue list.
  2. Embed serialized json data in HAML.
Edited by euko