Frameworks compared: QBCore, Qbox, ESX and more
Do you need a FiveM framework? An honest comparison of QBCore, Qbox, ESX Legacy, ox_core, ND Core and vRP: what each gives you, pros, cons, and how to choose.
Bu dokümanlar şimdilik İngilizce.
A framework is the shared base of a roleplay style server: player accounts and characters, money, jobs and grades, items and inventory, vehicles and garages, and a standard API that other resources build on. Picking one is the biggest technical decision you’ll make for an RP server, because most scripts you buy or write will be tied to it.
Do you need one?
No framework (standalone) if you run freeroam, racing, drifting, car meets, a minigame or a custom game mode. The Basic Server recipe plus vMenu, ox_lib and your own scripts is lighter, simpler and easier to reason about.
A framework if you want roleplay: characters, jobs, an economy, inventories, housing, and the thousands of community resources that expect one.
The main frameworks
| QBCore | Qbox | ESX Legacy | ox_core | ND Core | vRP | |
|---|---|---|---|---|---|---|
| Repo | qbcore-framework | Qbox-project | esx-framework | overextended/ox_core | ND-Framework | vRP-framework/vRP |
| Docs | qbcore.org/docs | docs.qbox.re | docs.esx-framework.org | overextended.dev | Repo README | Repo README |
| txAdmin recipe | Yes (listed) | Yes (listed) | Yes (listed) | No | No | No |
| Inventory | qb-inventory (ox_inventory optional) | ox_inventory | ESX inventory, ox_inventory optional | ox_inventory | ox_inventory | Built in |
| Script ecosystem | Largest | QBCore compatible (bridge) plus its own | Very large, oldest | Small, dev focused | Small | Small today |
| License | GPL-3.0 (qb-core) | See repos | See repos | LGPL-3.0 | GPL-3.0 | MIT |
| Best for | Most available scripts, lots of tutorials | New RP servers wanting modern, maintained code | Teams who know ESX, huge script catalogue | Developers building their own game mode | Lightweight custom RP | Legacy servers |
Honest pros and cons
QBCore
- Pros: the biggest pool of free and paid scripts, most YouTube tutorials target it, a complete recipe with ~60 resources, easy to start.
- Cons: many resources are older and vary in quality and performance; lots of servers run heavily modified forks, so “QBCore compatible” doesn’t always mean drop in; the default recipe is big, so you’ll spend time removing what you don’t need.
Qbox
- Pros: started as a QBCore fork and is now its own framework built on the ox stack (ox_lib, ox_inventory, ox_target); a
qb-corecompatibility bridge (qbx:enableBridge) lets many QBCore resources run; active maintenance and code review; good docs. - Cons: requires MariaDB 10.9+ and the ox stack (no qb-inventory); some older QBCore scripts need small changes; smaller community than QBCore or ESX.
ESX Legacy
- Pros: the oldest big framework, huge catalogue of scripts, the recipe is official and maintained by the ESX team, many experienced developers know it.
- Cons: years of different ESX versions (v1 final, 1.2, Legacy) mean old tutorials and scripts often don’t match Legacy; older addons can be slow; the style differs a lot from QB-based code.
ox_core
- Pros: clean, modern, by the Overextended team, TypeScript and Lua, made to be extended.
- Cons: not a batteries included RP server: few ready jobs, you build more yourself. Best for developers.
ND Core
- Pros: lightweight, works with ox_inventory, readable code.
- Cons: small community and ecosystem.
vRP
- Pros: one of the earliest frameworks, some servers still run it.
- Cons: few new resources target it today, and knowledge is scattered. Not recommended for a new server.
How to choose
- Is it roleplay? If not, go standalone.
- Does your team already know one? Use it. Experience beats a “better” framework.
- Starting fresh? Deploy Qbox and ESX Legacy (and QBCore if you like) on a dev machine with txAdmin, play each for an evening, and read some of their code.
- Check the scripts you want. If the paid scripts you plan to buy only support one framework, that decides it. Most big script stores support all three main ones.
- Think about performance and maintenance: fewer, well written resources beat a huge pack.
Warning
Switching frameworks later means migrating the database and rewriting or replacing most scripts. Choose before you have players.
What every framework gives you
Whichever you pick, you’ll work with the same concepts:
| Concept | QBCore | Qbox | ESX |
|---|---|---|---|
| Get the core | exports['qb-core']:GetCoreObject() |
exports.qbx_core:... exports, or @qbx_core/modules/lib.lua |
exports['es_extended']:getSharedObject() or @es_extended/imports.lua |
| Get a player (server) | QBCore.Functions.GetPlayer(src) |
exports.qbx_core:GetPlayer(src) |
ESX.GetPlayerFromId(src) |
| Add money | Player.Functions.AddMoney('cash', 100) |
exports.qbx_core:AddMoney(src, 'cash', 100) |
xPlayer.addMoney(100) |
| Jobs defined in | qb-core/shared/jobs.lua |
qbx_core/shared/jobs.lua |
Database tables jobs and job_grades |
| Items defined in | qb-core/shared/items.lua |
ox_inventory/data/items.lua |
Database table items (or ox_inventory/data/items.lua with ox_inventory) |
| Usable item | QBCore.Functions.CreateUseableItem |
exports.qbx_core:CreateUseableItem or ox_inventory item exports |
ESX.RegisterUsableItem |
Quick starts
Each covers the txAdmin install, folder structure, making yourself admin, adding a job and an item, and common pitfalls.
