Standalone
Agency-Garage
The ultimate garage system for FiveM. Store, retrieve & manage all your vehicles across multiple garage locations with a stunning glassmorphism UI. Vehicle categories (cars, boats, aircraft), live damage & fuel status, impound lot, shared & gang garages, vehicle search and favorites. 13 languages, MySQL persistence & ACE permissions. Auto-detects QBCore, ESX & Standalone.

01 Installation
Extract Agency-Garage into your resources folder
Import sql/install.sql into your database
Add ensure Agency-Garage to server.cfg
Configure garage locations & categories in config.lua
Restart server
Dependencies
oxmysql — required (MySQL persistence)QBCore / ESX — optional (Standalone works out of the box)
SQL File
Import this SQL file into your database before starting the resource:
-- =====================================================================
-- Agency Garage - Database (SUPPORT FILE)
--
-- You normally do NOT need to run this. With Config.AutoSetupDatabase = true
-- the script creates/adds everything on its own.
-- This file only exists for support cases or if auto-setup is disabled.
-- =====================================================================
-- ---------- STANDALONE ----------
-- Only needed if you run WITHOUT QBCore/ESX (Config.Framework = 'standalone').
CREATE TABLE IF NOT EXISTS `agency_garage_vehicles` (
`id` INT AUTO_INCREMENT PRIMARY KEY,
`identifier` VARCHAR(64) NOT NULL,
`plate` VARCHAR(12) NOT NULL,
`model` VARCHAR(64) NOT NULL,
`props` LONGTEXT,
`garage` VARCHAR(64) DEFAULT 'legion',
`state` TINYINT DEFAULT 1,
`fuel` FLOAT DEFAULT 100,
`engine` FLOAT DEFAULT 1000,
`body` FLOAT DEFAULT 1000,
`depotprice` INT DEFAULT 0,
`category` VARCHAR(16) DEFAULT 'car',
UNIQUE KEY `plate` (`plate`),
INDEX `identifier` (`identifier`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- ---------- ESX ----------
-- If your owned_vehicles table is missing these columns, uncomment them:
-- ALTER TABLE `owned_vehicles` ADD COLUMN `garage` VARCHAR(64) DEFAULT 'legion';
-- ALTER TABLE `owned_vehicles` ADD COLUMN `agency_state` TINYINT DEFAULT 1;
-- ALTER TABLE `owned_vehicles` ADD COLUMN `fuel` FLOAT DEFAULT 100;
-- ALTER TABLE `owned_vehicles` ADD COLUMN `engine` FLOAT DEFAULT 1000;
-- ALTER TABLE `owned_vehicles` ADD COLUMN `body` FLOAT DEFAULT 1000;
-- ALTER TABLE `owned_vehicles` ADD COLUMN `depotprice` INT DEFAULT 0;
-- ---------- QBCore ----------
-- player_vehicles already has state/garage/fuel/engine/body/depotprice.
-- Nothing to do.