FiveM School - Full Index
Master navigation. Three reading paths below depending on where you’re starting from.
Path 1 - Total Beginner (Recommended)
Read in order. ~2-4 hours of reading + as long as you want for the projects.
01-basics/01-what-is-fivem.md- what FiveM actually is01-basics/02-lua-crash-course.md- Lua syntax in 30 min01-basics/03-client-vs-server.md- the most important concept01-basics/04-resources-and-fxmanifest.md- anatomy of a resource02-events/01-local-events.md- how scripts talk02-events/02-net-events.md- across the network02-events/03-event-security.md- read twice02-events/04-callbacks.md- request/response pattern03-natives/01-what-are-natives.md- the GTA V API03-natives/02-common-natives.md- cheat sheet04-database/01-oxmysql-basics.md- talk to MySQL04-database/02-queries-and-security.md- don’t get SQL-injected05-frameworks/01-qbox-basics.md- player object, jobs, money05-frameworks/02-esx-basics.md- xPlayer, money accounts, jobs05-frameworks/03-qbcore-basics.md- core object, PlayerData, jobs, money06-ox-libraries/01-ox-lib.md- the swiss-army library06-ox-libraries/02-ox-target.md- third-eye targeting06-ox-libraries/03-inventories.md- items07-nui/01-nui-basics.md- HTML UI inside the game07-nui/02-react-nui.md- production NUI with React08-security/01-security-checklist.md- the audit list09-performance/01-threads-and-waits.md- don’t tank FPS09-performance/02-optimization-patterns.md- make it fast10-first-projects/01-hello-resource.md- your first resource10-first-projects/02-shop.md- full shop with security10-first-projects/03-nui-menu.md- HTML menu
Path 2 - “I Know Some Stuff Already”
Skip ahead based on what you already know:
| You already know | Start here |
|---|---|
| Lua syntax, new to FiveM | 01-basics/03-client-vs-server.md |
| FiveM basics, want a security review | 02-events/03-event-security.md → 08-security/ |
| Building your first NUI | 07-nui/01-nui-basics.md |
| Want to ship a real resource fast | 10-first-projects/01-hello-resource.md |
| Server is laggy, need to optimize | 09-performance/01-threads-and-waits.md |
Path 3 - Reference (Skim When Stuck)
Use as a glossary of patterns. Pick the lesson that covers the thing you’re searching for:
| Searching for | File |
|---|---|
RegisterNetEvent is doing something weird |
02-events/02-net-events.md |
| Player can dupe items | 02-events/03-event-security.md, 04-database/02-queries-and-security.md |
lib.callback.await returns nil |
02-events/04-callbacks.md |
| Vehicle won’t spawn | 03-natives/01-what-are-natives.md (Request/Has/Use pattern) |
| Need a confirm dialog | 06-ox-libraries/01-ox-lib.md |
| Click ATM to open menu | 06-ox-libraries/02-ox-target.md |
| Player can’t carry item | 06-ox-libraries/03-inventories.md |
| NUI focus stuck | 07-nui/01-nui-basics.md (onResourceStop cleanup) |
| Resource is at 0.5+ ms in resmon | 09-performance/01-threads-and-waits.md |
Folder Tree
01-basics
Core concepts. What FiveM is, Lua syntax, client/server split, fxmanifest structure.
02-events
The communication layer. Local events, net events, security, callbacks.
03-natives
The GTA V game API exposed to your scripts.
04-database
MySQL via oxmysql. Query patterns, parameterization, race-condition prevention.
05-frameworks
Qbox + ESX + QBCore: player object, jobs, money/accounts, metadata.
06-ox-libraries
The libraries 90% of modern resources use.
07-nui
HTML UI rendered inside the game via Chromium.
08-security
The audit checklist. Read before shipping anything.
09-performance
Threads, waits, optimization patterns, profiling.
10-first-projects
Build something real. Three end-to-end projects.
External Documentation Links
Bookmark these. Open them as you read the lessons.
Official FiveM
- FiveM Docs (root) - everything
- Scripting Manual - concepts
- Native Reference - searchable native database
- Lua Runtime - Lua-specific functions
- NUI Development - UI guide
- Game References - controls, blips, pedmodels, etc.
Communityox / ox libraries (canonical)
- coxdocs.dev (root) - all ox docs
- ox_lib - utility library
- ox_target - third-eye targeting
- ox_inventory - items
- oxmysql - MySQL wrapper
- communityox GitHub - source code
Qbox
- Qbox Docs
- qbx_core (GitHub) - the framework source
QBCore (legacy, similar API)
Lua language itself
- Lua 5.4 Reference Manual
- Programming in Lua (free online) - the textbook
Tools
- txAdmin - server manager
- HeidiSQL - Windows MySQL client
- DBeaver - cross-platform MySQL client
- VS Code - editor
- FontAwesome 6 icons - icon set ox_lib uses
Contributing
Found an error, want to add a section, or improve examples? PRs welcome. Read CONTRIBUTING.md first.
Keep tone direct. Keep code examples runnable. Don’t pad with filler. Beginners don’t need lectures, they need answers.