> For the complete documentation index, see [llms.txt](https://doc.var-fivem.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.var-fivem.com/supermarket-simulator/configuration/config.md).

# Config

### Core settings : `shared/shared.lua`

```lua
Shared.Language = "en"          -- "en", "fr" or "es"

Shared.Framework = {
    ESX = true,                 -- exactly ONE of these must be true
    QBCore = false,
    Standalone = false,
}

Shared.Admins = {}              -- identifiers allowed to use /smadmin (see below)
Shared.Editors = {}             -- identifiers allowed to use the prop editor everywhere
```

* **`Shared.Framework`** : set exactly one toggle to `true`. If zero or more than one is set, the resource prints a config error on start. The framework is also auto-detected at runtime, so this toggle mainly controls fallbacks; keep it consistent with the framework you actually run.
* **`Shared.Admins`** : a list of player identifiers (e.g. `"license:xxxx…"`, `"steam:xxxx"`, `"discord:xxxx"`). Members can open `/smadmin`, manage every store, and open the Catalog Manager. Empty by default — **add yourself first**.
* **`Shared.Editors`** : optional. Identifiers here can use the prop editor in any store (store owners can always edit their own).

### Content & behaviour : `config/*.lua`

| File                    | What it holds                                                                                                                                                                                                                           |
| ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `config/props.lua`      | `Shared.PropConfig` — **the single source of truth for every behaviour knob**: freecam controls, gizmo/editor, NPC customers, cleaning, register, garage tiers, security, payroll, sounds, markers. Search here before adding anything. |
| `config/categories.lua` | Prop categories shown in the editor (shelves, fridges, registers, décor).                                                                                                                                                               |
| `config/catalog.lua`    | Prop labels + prices (mirrors categories).                                                                                                                                                                                              |
| `config/items.lua`      | `Shared.GoodsConfig` — the sellable goods, their prices, and how they render inside containers.                                                                                                                                         |

> These files are the **seed** for the catalog. On first start they are baked into `server/catalog.json`, which then becomes the live source of truth (so the in-game Catalog Manager can edit it). After editing the config files, run `/smcatalogreseed` (or delete `server/catalog.json` and restart) to pull your changes into the live catalog — otherwise the JSON keeps winning. See Catalog manager.

### Localisation : `shared/locales/`

Strings live in `shared/locales/en.lua`, `fr.lua` and `es.lua` under `Shared.Locale.KEY`. Select the active language with `Shared.Language`. To add a language, copy `en.lua`, translate the values, and register it in `shared/locale_init.lua`.

### Optional prop packs (addons) : `shared/addons.lua`

Some props/goods come from **optional stream resources**. If the stream resource isn't running, those models are automatically hidden from the editor and buy UI (so you never place an invisible prop). Base-game props are always available.

Recognised packs:

| Pack resource                | Provides                                                                    |
| ---------------------------- | --------------------------------------------------------------------------- |
| `npo_247_supermarket_skafir` | NPO 247 shelves, fridge, furniture, security pack, soda/gumball/slush props |
| `var_supermarket_stream`     | `cbr_etage`, `cbr_frig` (and the core cash-register screen props)           |
| `bzzz_skafir`                | the `bzzz_*` goods display pack                                             |

If you don't own these packs, nothing breaks, the resource simply offers the base-game props. If you rename a pack resource, update `Shared.AddonModels` / the prefix map in `shared/addons.lua` to match.
