> ## Documentation Index
> Fetch the complete documentation index at: https://gabibou-ui.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Icons and branding

> Use the native icon catalogue and customize window branding.

## Native icons

Gabibou UI includes 96 original vector icon designs with stable IDs. Use a name or numeric ID in tabs, buttons, and notifications. `UI:GetIconId(name)`, `UI:GetIconName(idOrName)`, and `UI:GetIconCatalogue()` map the stable catalogue. `UI:GetIconNames()` lists names; `UI:GetIconVariants()` returns `Outline`, `Soft`, and `Duotone`.

```lua theme={null}
local farm = window:Tab({Title = "Farm", Icon = 21})
farm:Button({
    Title = "Harvest",
    Text = "Collect",
    Icon = "harvest",
    IconVariant = "Duotone",
    Callback = function()
        print("Connect your own action here")
    end,
})

local harvestId = UI:GetIconId("harvest")
```

See the [complete icon catalogue](https://gabibou-ui.mintlify.site/reference/icon-catalogue.md) for all 96 names and IDs. Icon IDs belong to this library; no image asset is required for built-in drawings.

## Navigation variants

Set window navigation with `Navigation = {Variant = "Soft", IconVariant = "Outline"}` or call `window:SetNavigation(options)`. Variants are `Classic`, `Soft` (default), `Pill`, and `Rail`; Rail gives the selected tab a distinct icon tile with a neutral label. Icon variants are `Outline`, `Soft`, and `Duotone`. A tab can provide `IconVariant` to pin its own icon style. Buttons can also set `IconVariant`.

`UI:RegisterIcon(name, builder)` registers a custom vector builder. `UI:UnregisterIcon(name, expectedBuilder)` removes a registration, optionally checking the expected function to avoid removing another module's registration.

## Window branding

Window branding uses an initial, avatar, or custom uploaded image. Configure it with `Branding` at window creation or `window:SetBranding(options)`. Supported placements are `TopLeft`, `TopRight`, `BottomRight`, and `BothRight`. Image mode accepts an `rbxassetid://<digits>` URI. Avatar mode uses Roblox's thumbnail service; it is not a remote download from this documentation site.

```lua theme={null}
local window = UI:CreateWindow({
    Title = "Garden Tools",
    Branding = {Mode = "Avatar", Placement = "BothRight"},
})
```

## Footer watermark

The footer shows `Gabibou UI` and the library version by default. Hide only that text in the window options or change it later with `window:SetWatermark(false)`. The desktop hide-key hint, logos, and other footer actions stay visible.

```lua theme={null}
local window = UI:CreateWindow("Garden Tools", {ShowWatermark = false})
-- Later:
window:SetWatermark(true) -- Show the name and version again.
```

`ShowWatermark` defaults to `true`.

For the key gate's separate logo and Discord mark, see [Key systems](https://gabibou-ui.mintlify.site/customization/key-systems.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.