# Configuration

All configuration lives in `editable/shared/config.lua`. This is the only file you need to edit for basic setup.

***

## `Config.Framework`

Controls which server framework koja-lib uses.

```lua
Config.Framework = "auto"
```

| Value      | Behaviour                                                                     |
| ---------- | ----------------------------------------------------------------------------- |
| `"auto"`   | Detects `es_extended`, `qbx_core`, or `qb-core` automatically (in that order) |
| `"esx"`    | Force ESX                                                                     |
| `"qb"`     | Force QBCore / Qbox                                                           |
| `"custom"` | Use your own implementation in `editable/custom/framework_*.lua`              |

:::hint{type="info"}
When `"auto"` is set and no supported framework is found, koja-lib falls back to `"custom"`.
:::

***

## `Config.Inventory`

Controls which inventory system koja-lib uses.

```lua
Config.Inventory = "auto"
```

| Value                | Behaviour                                                        |
| -------------------- | ---------------------------------------------------------------- |
| `"auto"`             | Detects the running inventory resource automatically             |
| `"ox_inventory"`     | Force ox\_inventory                                              |
| `"qb-inventory"`     | Force qb-inventory                                               |
| `"qs-inventory"`     | Force qs-inventory                                               |
| `"codem-inventory"`  | Force codem-inventory                                            |
| `"jaksam_inventory"` | Force jaksam\_inventory                                          |
| `"custom"`           | Use your own implementation in `editable/custom/inventory_*.lua` |

:::hint{type="info"}
When `"auto"` is set and no supported inventory is found, koja-lib falls back to the framework's native item functions.
:::

***

## `Config.Notify`

Controls which notification system is used by `KOJA.Client.SendNotify` and `KOJA.Server.SendNotify`.

```lua
Config.Notify = "esx"
```

| Value   | System                     |
| ------- | -------------------------- |
| `"esx"` | ESX built-in notifications |
| `"qb"`  | QBCore notifications       |
| `"ox"`  | ox\_lib notify             |
| `"lib"` | koja-lib built-in notify   |

:::hint{type="info"}
This is independent from `Config.Framework` — you can run ESX but use ox\_lib notifications.
:::

***

## `Config.PoliceGroups`

A map of job names that are considered police. Used by `KOJA.Server.GetCopCount()`.

```lua
Config.PoliceGroups = {
    ["police"] = true,
    ["sheriff"] = true,
    ["fbi"]     = true,
}
```

***

## `Config.Laser`

Configuration for the built-in laser pointer command.

```lua
Config.Laser = {
    enable  = true,
    command = 'laser',
}
```

***

## `Config.SaveVehicleConfig`

Controls how license plates are generated by `KOJA.Server.GeneratePlate()`.

```lua
Config.SaveVehicleConfig = {
    Charset       = "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
    NumberCharset = "0123456789",
    Letters       = 4,    -- number of letters
    Numbers       = 4,    -- number of digits
    Separator     = "",   -- character between letters and digits
}
```

Example plate with default config: `ABCD1234`

***

## `Config.UI`

Appearance settings for the progress bar and Text UI.

```lua
Config.UI = {
    ProgressBar = {
        theme        = "darkBlack",  -- orange | darkGray | darkBlack | navy | green | purple | red
        bottomOffset = 1,            -- distance from bottom in vw
    },
    TextUI = {
        theme        = "darkBlack",
        bottomOffset = 5.5,
    },
}
```

***

## `Config.Debug`

Enables console output for internal errors and debug messages.

```lua
Config.Debug = false
```

## Related pages

- [Installation](/koja-lib/getting-started/installation) — Dependency Required Notes ----------------------- -------- ---------------------------------- oxmysql Yes Database driver esextended No Required only for ESX framework qb-core o…
- [Getting Started](/koja-lib/getting-started) — back to the section overview
