Describe the script and Codella writes it for the framework your server runs — client and server Lua, fxmanifest.lua, config, locales, NUI and SQL — validated server-side, tuned for 0.00ms idle, and ready to ensure.
[21:14:02 INFO]: Started resource ox_lib[21:14:02 INFO]: Started resource oxmysql[21:14:03 INFO]: Started resource qb-core[21:14:04 INFO]: Started resource codella_mechanic[21:14:04 INFO]: [codella_mechanic] 3 workshops loaded, 2 society accounts linked[21:14:04 INFO]: [codella_mechanic] invoices table ready (oxmysql)[21:14:11 INFO]: Server started, 0.00ms idle> QBCore.Functions.GetPlayer and Player.Functions.AddMoney where you run QBCore; exports.qbx_core on Qbox; xPlayer.addAccountMoney and ESX.RegisterServerCallback on ESX. The generator reads a library of verified framework references before writing a line, so the exports and events it uses actually exist on your server.
Client code asks, the server decides. Every net event re-derives the player from source, validates argument types and ranges, checks distance to the location, checks job and permissions, and enforces cooldowns — the pattern that stops the give-money and give-item exploits cheat menus rely on.
lib.callback for round trips, lib.registerContext and lib.inputDialog for menus, lib.progressBar with animations and props, lib.zones and lib.points instead of per-frame distance loops, ox_target options, ox_inventory stashes and shops, oxmysql with .await and placeholders.
Every loop uses the sleep-variable pattern, proximity work runs through points and zones, peds, blips and objects are tracked and removed on resource stop. The goal is 0.00ms idle in resmon, because a script that costs 0.5ms at 128 players is a script that gets removed.
HTML, CSS and JavaScript or a React build, declared correctly in fxmanifest.lua, with callbacks that always answer, focus that always releases, and data that comes from the server through callbacks rather than being decided in the browser.
Before using an unusual native the generator checks the official natives reference for the exact name, parameters and whether it is available on the client, the server, or both — so you do not get a client native called from a server file.
attempt to index a nil value on the first interaction.Dedicated pages cover the two biggest ecosystems: QBCore scripts and ESX scripts. Qbox servers get native qbx exports with the ox stack.
A QBCore mechanic job using ox_lib and ox_target: duty toggle at the workshop ped, a repair action with a skill check that charges the customer and pays 60% to the society account, a parts stash, and invoices stored in MySQL with a /invoices menu.
QBCore, Qbox and ESX Legacy, plus standalone resources that need no framework at all. Name the framework your server runs and the code is written against its real API — the QBCore player object and callbacks, the Qbox exports, or ESX's xPlayer and server callbacks. If you do not name one, the script ships with a small bridge that detects qb-core, qbx_core or es_extended at runtime.
Yes. Those are the defaults for menus, progress bars, targeting, inventories and database access, because they are what most current servers run. Tell it you use qb-target, qb-menu, qb-inventory or the ESX menus instead and it uses those APIs. Database code always goes through oxmysql with parameterized queries.
A complete resource folder: fxmanifest.lua, config.lua, client and server Lua files, locales, an html folder when the script has a NUI, an sql/install.sql for any tables it needs, and a README with the ensure line, dependencies and where to add items or jobs. You download the folder and put it in your resources directory.
It is written server-authoritative by default: money, items, jobs and rewards are validated and applied only on the server, with distance checks, type checks, cooldowns and rate limits on every event a client can trigger. No script is immune to a compromised client, but generated resources avoid the classic client-trusting exploits that get servers dumped.
Yes. Menus, HUD elements, phones, admin panels and shop interfaces can be built as NUI pages in plain HTML, CSS and JavaScript, or as a React app with a build step when you ask for it. The Lua side wires up SendNUIMessage, RegisterNUICallback and focus handling correctly.
There are free credits that refresh daily, which is enough to build and iterate on a script without paying. Larger resources and heavier refinement use more credits; the pricing page lists what each plan includes.
Framework-specific pages go deeper on QBCore and ESX; the ideas page is a list of scripts described precisely enough to build.