> ## Documentation Index
> Fetch the complete documentation index at: https://docs.humalike.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Installation and updates

> Install, order, update, and roll back the FiveM resource safely.

## Install a release

Use the `humalike.zip` asset from
[GitHub Releases](https://github.com/Humalike/humalike-fivem-npc/releases). Do
not download GitHub's automatic source archives: they contain repository files,
not the composed runtime resource.

Place the extracted `humalike` directory directly in a resources directory and
start it by name:

```cfg theme={null}
set humalike_license_key "ak_secret_replace_me"
ensure humalike
```

The directory must not be nested as `humalike/humalike`.

## Resource order

HumaLike can start without a framework. For automatic selection during initial
startup, start optional dependencies first:

```cfg theme={null}
ensure oxmysql
ensure ox_lib
ensure es_extended       # or qb-core / qbx_core
ensure ox_inventory      # optional
ensure ox_target         # optional

ensure humalike
ensure my-humalike-bridge
```

Late-starting and restarted dependencies are detected. A custom bridge should
start after `humalike` and declare it as a dependency.

## Callback networking

The callback URL registered in the dashboard must reach the FXServer from the
public internet. Allow inbound TCP traffic to the selected server port. If you
change the FXServer port or public address, update the callback in the dashboard.

The URL format is:

```text theme={null}
http://PUBLIC_IPV4:port
```

The host must be a globally routable literal IPv4 address. Hostnames, IPv6,
private addresses, loopback addresses, and reserved example addresses are not
accepted. Supported ports are `1024`–`65535`; do not add a path, query, or
fragment.

## Update

1. Download the new release and verify its published SHA-256 checksum.
2. Stop `humalike` or stop the FXServer.
3. Keep the previous directory as a rollback copy outside the active resources
   tree.
4. Replace the complete `humalike` directory.
5. Start it and run `humalike_status`.

Do not merge a new release over the old directory. Removed files would remain
active and can produce mixed-version behavior.

Keep custom code in a separate bridge resource. Updating HumaLike should never
overwrite server-specific jobs, dispatch logic, rewards, or UI hooks.

## Roll back

Stop the resource, restore the complete directory from the previous release,
and start it again. The server license remains valid. If the dashboard schema
or required server behavior changed in a release, follow that release's notes
before rolling back.

## Development builds

Production servers should use release archives. Repository checkouts require a
frontend build and are intended only for contributors. A release already
contains all compiled NUI assets.

## Next

* [Complete the quickstart](/ai-npc/quickstart).
* [Review configuration](/ai-npc/configuration).
* [Prepare production operations](/ai-npc/operations).
