# QBCore Installation

{% @github-files/github-code-block url="<https://github.com/ahmetkavl/kvlstore-qbtarget>" %}

Step - 1:

Copy kvl-uwujob to your resources directory&#x20;

Add "ensure kvl-uwujob" to your server config

## Step - 2a:&#x20;

## Society configuration & Boss menu configuration

If using QBCore you will need to add the job to your jobs.lua qb-core/shared/jobs.lua

```lua
['uwucafe'] = {
    label = 'Uwu Cafe',
    defaultDuty = true,
    offDutyPay = false,
    grades = {
        ['0'] = {
            name = 'Employee',
            payment = 50
        },
        ['1'] = {
            name = 'Boss',
            isboss = true,
            payment = 50
        },
    },
},
```

## Step - 2b:

After you add the job to your jobs file we now need to add the boss menu in.

We are going to want to open our cl\_config.lua which can be found at qb-management/client/cl\_config.lua under Config.bossmenus we will add the following.

```lua
    ['uwucafe'] = {
        vector3(-596.16, -1052.18, 22.34),
    },
```

## Step - 3:&#x20;

We need to configure the store The followin code works for QS-Shops & qb-shops

## Create the shop

```lua
["uwumarket"] = {
	["label"] = "Uwu Market",
	["coords"] = vector4(-589.29, -1068.68, 22.34),
	["ped"] = 'mp_m_shopkeep_01',
	["scenario"] = "WORLD_HUMAN_STAND_MOBILE",
	["radius"] = 1.5,
	["targetIcon"] = "fas fa-shopping-basket",
	["targetLabel"] = "Open Uwu Shop",
	["products"] = Config.Products["uwumarket"],
	["showblip"] = false,
	["blipsprite"] = 52,
	["blipscale"] = 0.6,
	["blipcolor"] = 0,
	["delivery"] = vector4(-589.29, -1068.68, 22.34)
},
```

## Then we will add the items to the shop

```lua
["uwumarket"] = {
	[1] = {
		name = "caramelsyrup",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 1,
	},
	[2] = {
		name = "vanillasyrup",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 2,
	},
	[3] = {
		name = "coffeebean",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 3,
	},        
	[4] = {
		name = "milk",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 4,
	},        
	[5] = {
		name = "ice",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 5,
	},        
	[6] = {
		name = "sausage",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 6,
	},        
	[7] = {
		name = "olive",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 7,
	},        
	[8] = {
		name = "mushroom",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 8,
	},        
	[9] = {
		name = "pepper",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 9,
	},
	[10] = {
		name = "corn",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 10,
	},
	[11] = {
		name = "pizzadough",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 11,
	},
	[12] = {
		name = "carrot",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 12,
	},
	[13] = {
		name = "cucumber",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 13,
	},
	[14] = {
		name = "avocado",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 14,
	},
	[15] = {
		name = "tomato",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 15,
	},
	[16] = {
		name = "strawberry",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 16,
	},
	[17] = {
		name = "banana",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 17,
	},
	[18] = {
		name = "chocolatesauce",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 18,
	},
	[19] = {
		name = "spongecake",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 19,
	},
	[20] = {
		name = "croissantdough",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 20,
	},
	[21] = {
		name = "rawmeat",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 21,
	},
	[22] = {
		name = "flour",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 22,
	},
	[23] = {
		name = "whiskey",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 23,
	},
	[24] = {
		name = "vodka",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 24,
	},
	[25] = {
		name = "tequila",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 25,
	},
	[26] = {
		name = "orangejuice",
		price = 5,
		amount = 50,
		info = {},
		type = "item",
		slot = 26,
	},
},
```

## Next we will add the images for our inventory and the items to qb-core/shared/items.lua

## Adding images for your inventory Copy the files from Images to your Inventoryname/html/images folder.

## Adding items to the items.lua

```lua
	['avocado'] 			 	 	= {['name'] = 'avocado', 			  			['label'] = 'Avocado', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'avocado.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['banana'] 			 	 	    = {['name'] = 'banana', 			  			['label'] = 'Banana', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'banana.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['caramelcoffee'] 			 	= {['name'] = 'caramelcoffee', 			  		['label'] = 'Caramel Coffee', 		['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'caramelcoffee.png', 		['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['caramelsyrup'] 			 	= {['name'] = 'caramelsyrup', 			  		['label'] = 'Caramel Syrup', 		['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'caramelsyrup.png', 		['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['carrot'] 			 	 	    = {['name'] = 'carrot', 			  			['label'] = 'Carrot', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'carrot.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['chocolatesauce'] 			 	= {['name'] = 'chocolatesauce', 			  	['label'] = 'Chocolate Sauce', 		['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'chocolatesauce.png', 		['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['coffeebean'] 			 	 	= {['name'] = 'coffeebean', 			  		['label'] = 'Coffee Bean', 			['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'coffeebean.png', 			['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['croissant'] 			 	 	= {['name'] = 'croissant', 			  			['label'] = 'Croissant', 			['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'croissant.png', 			['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['croissantdough'] 			 	= {['name'] = 'croissantdough', 			  	['label'] = 'Croisstant Dough', 	['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'croissantdough.png', 		['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['coldcroissant'] 			 	= {['name'] = 'coldcroissant', 			  		['label'] = 'Cold Croissant', 		['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'coldcroissant.png', 		['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['corn'] 			 	 	    = {['name'] = 'corn', 			  				['label'] = 'Corn', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'corn.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['cucumber'] 			 	 	= {['name'] = 'cucumber', 			  			['label'] = 'Cucumber', 			['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'cucumber.png', 			['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['filtercoffee'] 			 	= {['name'] = 'filtercoffee', 			  		['label'] = 'Filter Coffee', 		['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'filtercoffee.png', 		['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['ice'] 			 	 	    = {['name'] = 'ice', 			  				['label'] = 'Ice', 					['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'ice.png', 					['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['milk'] 			 	 	   	= {['name'] = 'milk', 			  				['label'] = 'Milk', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'milk.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['mixedcake'] 			 	 	= {['name'] = 'mixedcake', 			  			['label'] = 'Mixed Cake', 			['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'mixedcake.png', 			['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['mushroom'] 			 	 	= {['name'] = 'mushroom', 			  			['label'] = 'Mushroom', 			['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'mushroom.png', 			['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['olive'] 			 	 	    = {['name'] = 'olive', 			  				['label'] = 'Olive', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'olive.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['pepper'] 			 	 	    = {['name'] = 'pepper', 			  			['label'] = 'Pepper', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'pepper.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['coldpizza'] 			 	 	= {['name'] = 'coldpizza', 			  			['label'] = 'Cold Pizza', 			['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'coldpizza.png', 			['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['pizza'] 			 	 	    = {['name'] = 'pizza', 			  				['label'] = 'Pizza', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'pizza.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['pizzadough'] 			 	 	= {['name'] = 'pizzadough', 			  		['label'] = 'Pizza Dough', 			['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'pizzadough.png', 			['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['salad'] 			 	 	    = {['name'] = 'salad', 			  				['label'] = 'Salad', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'salad.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['sausage'] 			 	 	= {['name'] = 'sausage', 			  			['label'] = 'Sausage', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'sausage.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['spongecake'] 			 	 	= {['name'] = 'spongecake', 			  		['label'] = 'Sponge Cake', 			['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'spongecake.png', 			['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['strawberry'] 			 	 	= {['name'] = 'strawberry', 			  		['label'] = 'Strawberry', 			['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'strawberry.png', 			['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['tomato'] 			 	 	    = {['name'] = 'tomato', 			  			['label'] = 'Tomato', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'tomato.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['vanillacoffee'] 			 	= {['name'] = 'vanillacoffee', 			  		['label'] = 'Vanilla Coffee', 		['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'vanillacoffee.png', 		['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['vanillasyrup'] 			 	= {['name'] = 'vanillasyrup', 			  		['label'] = 'Vanilla Syrup', 		['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'vanillasyrup.png', 		['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['burger'] 			 	 	    = {['name'] = 'burger', 			  			['label'] = 'Burger', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'burger.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['burgermeat'] 			 	 	= {['name'] = 'burgermeat', 			  		['label'] = 'Burger Meat', 			['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'burgermeat.png', 			['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['burgerbread'] 			 	= {['name'] = 'burgerbread', 			  		['label'] = 'Burger Bread', 		['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'burgerbread.png', 			['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['rawmeat'] 			 	 	= {['name'] = 'rawmeat', 			  			['label'] = 'Raw Meat', 			['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'rawmeat.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['flour'] 			 	 	    = {['name'] = 'flour', 			  				['label'] = 'Flour', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'flour.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['dirtyplate'] 			 	 	= {['name'] = 'dirtyplate', 			  		['label'] = 'Dirty Plate', 			['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'dirtyplate.png', 			['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['whiskey'] 			 	 	= {['name'] = 'whiskey', 			  			['label'] = 'Whiskey', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'whiskey.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['tequila'] 			 	 	= {['name'] = 'tequila', 			  			['label'] = 'Tequila', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'tequila.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['vodka'] 			 	 	    = {['name'] = 'vodka', 			  				['label'] = 'Vodka', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'vodka.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['rainbow'] 			 	 	= {['name'] = 'rainbow', 			  			['label'] = 'Rainbow', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'rainbow.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['sunrise'] 			 	 	= {['name'] = 'sunrise', 			  			['label'] = 'Sunrise', 				['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'wool.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['whiskeycoffee'] 			 	= {['name'] = 'whiskeycoffee', 			  		['label'] = 'Whiskey Coffee', 		['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'sunrise.png', 				['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
	['orangejuice'] 			 	= {['name'] = 'orangejuice', 			  		['label'] = 'Orange Juice', 		['weight'] = 100, 	    ['type'] = 'item', 		['image'] = 'orangejuice.png', 			['unique'] = false, 	['useable'] = false, 	['shouldClose'] = true,    ['combinable'] = nil,   ['description'] = nil},
```

### **Installation is complete, enjoy!**


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://kavl.gitbook.io/kvl-store/scripts/uwu-job/qbcore-installation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
