# Tebex / Asset Escrow Release

# Tebex / Asset Escrow Release

Production packaging and distribution notes.

**Applies to:** `Nord Inventory v2.0.0`
# Tebex / Asset Escrow release

This package is structured as the production distribution of Nord Inventory.

## Resource name

Keep the installed resource folder named exactly:

```text
nord_inventory
```

Start `oxmysql` before the inventory:

```cfg
ensure oxmysql
ensure nord_inventory
```

## What stays open

Nord Inventory intentionally keeps only the parts a server owner or integration developer may reasonably need to edit outside Asset Escrow.

### Owner configuration

Everything under `config/` stays open:

```text
config/
├── core.lua
├── commands.lua
├── inventory.lua
├── bridges.lua
├── vehicles.lua
├── world.lua
├── items.lua
├── ui.lua
├── stashes.lua
├── locales.lua
└── admin.lua
```

There is no root `config.lua` and no `server/config.lua`.

### Compatibility bridges

Framework/provider compatibility stays open so a server can adapt Nord Inventory without modifying its protected core:

```text
server/bridge/
├── framework/
│   ├── core.lua
│   ├── standalone.lua
│   ├── qb.lua
│   ├── qbox.lua
│   ├── esx.lua
│   ├── nord.lua
│   └── custom.lua
├── permissions.lua
├── notify.lua
└── textui.lua
```

The client bridge layer is open as well:

```text
client/bridge/
├── common.lua
├── notify.lua
├── target.lua
└── textui.lua
```

Use `server/bridge/framework/custom.lua` for unsupported frameworks instead of changing the inventory core.

### Data intended for owner edits

These files also remain open:

- `shared/items.lua`
- `shared/weapons.lua`
- `shared/vehicles.lua`
- `shared/categories.lua`
- `locales/en.json`
- `locales/pt.json`
- item images under `web/images/items/`

## What stays protected

The inventory engine, database/registry implementation, Admin Studio server actions, provider ecosystem implementation, runtime transaction logic and the main NUI source remain protected by Asset Escrow.

In particular, do **not** add the following to `escrow_ignore`:

```text
server/core/ecosystem.lua
```

That file contains the Nord Lab curated Recommended Scripts catalog. Server owners can choose whether the read-only button is visible through `Config.Ecosystem.ShowRecommendedScripts`, but cannot edit the catalog itself.

## Framework bridge layout

Set the framework in `config/core.lua`:

```lua
Config.Framework = 'auto'
```

Supported values:

```text
auto
qb
qbox
esx
nord
standalone
custom
```

`auto` detects Qbox, QB-Core, ESX and Nord Core in that order. If an explicitly configured framework is unavailable, Nord falls back safely to standalone identifiers and logs the reason.

## Client download footprint

Documentation, changelogs and SQL files are included in the Tebex ZIP for server owners, but are deliberately **not** listed in the manifest `files` block. Connecting players only download the runtime NUI/locales/item artwork required by the resource.

## Encryption note

A source ZIP is not itself Cfx.re-encrypted. FiveM Asset Escrow protection is applied when Nord Lab publishes the resource through the Cfx.re/Tebex Asset Escrow pipeline.

Before publishing, verify that:

1. `fxmanifest.lua` contains the intended `escrow_ignore` list.
2. `server/core/ecosystem.lua` is not ignored.
3. No protected `server/core/`, `server/modules/`, `client/core/` or `client/modules/` file was accidentally added to the ignore list.
4. The resource folder is named `nord_inventory`.
5. The production checklist passes on a staging FXServer.
