Description
A vertical context list menu with nested submenus, per-item icons and
callbacks — the qb-menu/ox_lib registerContext pattern, not a radial wheel.
Servers buy it as a reusable building block: any resource can hand it a menu table
and get back a clean selection routed to a local or server event.
Prompt Template
You are writing a FiveM NUI context list menu for the <esx|qbcore|qbox framework.
The full prompt template and its reference Lua are part of a one-time pack. Pick your depth — both are lifetime access, no subscription, ever.
- 60 prompts + syntax-validated reference Lua
- Lifetime access — pay once
- All 510 prompts — the full library
- Per-prompt profit/trend intelligence (CSV + playbook)
- Lifetime free updates — new niches as the market moves
$49 for 60 · $199 for all 510 + intelligence — one-time, no subscription.
Expected Output
The reference Lua lives at content/expected-outputs/ui/12-context-list-menu.lua.
The full prompt template and its reference Lua are part of a one-time pack. Pick your depth — both are lifetime access, no subscription, ever.
- 60 prompts + syntax-validated reference Lua
- Lifetime access — pay once
- All 510 prompts — the full library
- Per-prompt profit/trend intelligence (CSV + playbook)
- Lifetime free updates — new niches as the market moves
$49 for 60 · $199 for all 510 + intelligence — one-time, no subscription.
Known Failure Modes & Corrective Prompt
- State in the callback — mutating money inside
RegisterNUICallbackis client-trust; route throughserverEvent. - Cursor trapped — every exit path (close, submenu-Back to a non-menu) must
call
SetNuiFocus(false, false). - Missing reply registration — the client must
RegisterNetEventthe notify the server fires back.
Corrective re-prompt: "The Check balance item read the wallet inside the NUI callback — make it serverEvent only, validate the balance in server.lua, and TriggerClientEvent a notify back that the client RegisterNetEvent's. Verify every hide() path calls SetNuiFocus(false,false)."
Framework Integration
- ESX: read the balance with
xPlayer.getAccount('bank').moneyserver-side before sending the notify. - QBCore:
Player.PlayerData.money['bank']afterGetCoreObject(); the menu table format maps 1:1 onto qb-menu items. - QBox:
exports.qbx_core:GetPlayer(src).PlayerData.money.bank; client NUI code is identical across frameworks.
Profit Potential
$400–$5500/mo on Tebex (expected ~$1500). [INFERRED] priced in the $50-389 script band against the signal-scraper tebex_snapshot corpus (n=100, median seller $11.85K/mo); a hot, reused primitive lands mid-band.
Trend Signal
🔥 hot — corpus: ox_lib/qb-menu context menus are a ubiquitous building block across ox-ecosystem resources the scraper tracks; ships as a distinct primitive from the radial wheel.
Sales Angle
Position as the drop-in replacement for qb-menu/ox_lib context calls — one menu table in, one clean selection out. Recommended Tebex price $189.
Difficulty & Ship Time
intermediate · ships in 2-4h.