gitlab-org--gitlab-foss/doc/development/fe_guide/dependencies.md

1.9 KiB
Raw Blame History

Frontend dependencies

Package manager

We use Yarn to manage frontend dependencies. There are a few exceptions:

  • FontAwesome, installed via the font-awesome-rails gem: we are working to replace it with GitLab SVGs icons library.
  • ACE editor, installed via the ace-rails-ap gem.
  • Other dependencies found under vendor/assets/.

Updating dependencies

Renovate GitLab Bot

We use the Renovate GitLab Bot to automatically create merge requests for updating dependencies of several projects. You can find the up-to-date list of projects managed by the renovate bot in the projects README. Some key dependencies updated using renovate are:

Blocked dependencies

We discourage installing some dependencies in GitLab repository because they can create conflicts in the dependency tree. Blocked dependencies are declared in the blockDependencies property of GitLabs package.json file.

Dependency notes

BootstrapVue

BootstrapVue is a component library built with Vue.js and Bootstrap. We wrap BootstrapVue components in GitLab UI with the purpose of applying visual styles and usage guidelines specified in the Pajamas Design System. For this reason, we recommend not installing BootstrapVue directly in the GitLab repository. Instead create a wrapper of the BootstrapVue component you want to use in GitLab UI first.