> For the complete documentation index, see [llms.txt](https://docs.sourcedev.pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sourcedev.pro/general/frameworks.md).

# Framework Compatibility

Source Development resources isolate framework operations behind their `bridge/` directory. Support still varies by resource and feature, so configure the framework explicitly and verify feature-specific integrations.

## Framework matrix

| Framework  | src-phone             | Notes                                                                                                                     |
| ---------- | --------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| QBox       | Supported             | Set `Config.Core = 'qbox'`. Uses the QBox/QB bridge mappings where applicable.                                            |
| QBCore     | Supported             | Set `Config.Core = 'qb'`.                                                                                                 |
| ESX        | Supported             | Set `Config.Core = 'esx'` and verify vehicle and service SQL mappings.                                                    |
| vRP        | Supported             | Set `Config.Core = 'vrp'` and verify the server's identity and vehicle schema.                                            |
| Standalone | Supported with limits | Set `Config.Core = 'standalone'`. Framework-owned money, job, inventory, and vehicle features require custom integration. |

See the banking and billing sections for their resource-specific framework support.

## Bridge responsibilities

A bridge translates resource operations into the APIs and schema of the running framework. Depending on the resource, this includes:

* Player identifiers and character data.
* Jobs and service membership.
* Cash and bank accounts.
* Inventory items.
* Owned vehicles, garage state, keys, and fuel.
* Notifications and callbacks.
* Voice channels.

Selecting a framework name does not automatically make an unsupported third-party garage, inventory, fuel, or voice resource compatible. Review the relevant bridge configuration and implementation before deployment.

## Custom framework work

When adding a custom framework:

1. Keep the public resource API unchanged.
2. Implement identifier, player lookup, money, job, inventory, and callback operations in the bridge.
3. Map database columns in configuration rather than hard-coding them in application files.
4. Validate every client-supplied identifier and amount on the server.
5. Test player load, unload, reconnect, and resource restart behavior.
