Customize
Branding
Theme

Theme

This guide will help you tailor the look and feel of your Invenio repository instance to reflect your brand's identity. We'll walk you through step-by-step instructions for configuring key elements of your theme, including color schemes, typography, slogans, and logos.

The theming system used by Invenio is based on Semantic UI theming and the Invenio Semantic UI theme package.

The user interface of a typical Invenio repository site consists of configuration-driven page templates and themed Semantic UI elements, which are initially configured to use the default Invenio theme. You can customize the appearance of your site using the methods described below.

Theming Methods

Modifying Invenio Configuration

You can customize your site's theme by setting configuration options in either the invenio.cfg file or the variables file (where each key must be prefixed with INVENIO_) located in the root of your repository project:

    • ...
    • invenio.cfg
    • variables
  • For a complete list of possible configuration options, please refer to:

    Creating/Overriding Files under the Branding Folder

    You can also place custom files or customize existing ones under the branding folder created in your project:

          • __init__.py
          • webpack.py
    • When customizing your brand theme, you'll likely spend most of your time working within the ui/branding/semantic-ui/less and templates folders.

      Theme Hierarchy

      Invenio applies the following theme hierarchy when applying any styling rules and variables:

      Semantic UI theme (opens in a new tab)

      Default theme settings provided by Semantic UI are applied.

      Invenio Theme (opens in a new tab)

      Deafult theme settings packaged by the Invenio Theme (opens in a new tab) are applied, extending or overriding pre-existing settings with custom values.

      Branding

      Your customizations made in the branding folder is applied on top.