> For the complete documentation index, see [llms.txt](https://izzyshop-1.gitbook.io/izzyshop-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://izzyshop-1.gitbook.io/izzyshop-docs/izzyshop-resources/izzy-dancing/installation.md).

# Installation

izzy-dancing is a full dancing event system for FiveM roleplay servers:

1. Place folders in your server `resources`:

   ```
   [tqdev]/izzy-dancing
   [tqdev]/izzy-dancing-stream   (dependency)
   ```
2. Add to `server.cfg` (order matters — stream first):

   ```cfg
   ensure izzy-dancing-stream
   ensure izzy-dancing
   ```
3. Optional dependencies (if you use them):

   ```cfg
   ensure xsound
   ensure MugShotBase64
   ensure ox_target
   ```
4. Edit `shared/config.lua` — locale, bets, static locations, music, etc.
5. Paste Discord webhook URLs into `shared/webhook.lua` (optional).
6. Restart server or `ensure izzy-dancing`.

On start, the server prints a version check line in console (`server/version.lua`).

### File Structure

```
izzy-dancing/
├── fxmanifest.lua
├── DOCUMENT.md              ← this file
├── items.txt                ← inventory item examples
├── version.json
│
├── shared/
│   ├── config.lua           ← main settings
│   ├── webhook.lua          ← Discord URLs only
│   ├── utils.lua            ← bet validation, static hours helpers
│   ├── locale.lua           ← language loader
│   └── cores.lua            ← ESX / QB / QBX detection
│
├── locales/
│   ├── en.lua, tr.lua, de.lua, fr.lua, es.lua
│   ├── pt.lua, pl.lua, nl.lua, it.lua, ru.lua
│
├── client/
│   ├── core.lua             ← notifications
│   └── client.lua           ← NUI, placement, game, static floors, target
│
├── server/
│   ├── core.lua             ← framework, money, admin, items
│   ├── discord.lua          ← webhook embed logic (fixed branding)
│   ├── version.lua          ← GitHub version check
│   └── server.lua           ← lobbies, game logic, sync
│
└── html/
    ├── index.html
    ├── index.css
    ├── index.js
    ├── img/
    └── font/
```

### Quick Start

Create a lobby (manual placement)

1. `/createlobby`
2. Set bet, password, max players in menu → **Create Lobby**
3. Place dance floor: **E** confirm, **BACKSPACE** cancel, **scroll** rotate
4. Open panel with **E** near floor → invite players, set music/difficulty
5. **Start Game**

#### Create a lobby (static floor)

1. Go to a configured static location (e.g. Beach Dance Floor)
2. Press **E** → **Create Dancing Lobby**
3. Configure in menu — placement is skipped; floor is already there
4. Invite & start as above

#### Join a lobby

* Accept invite from NUI popup, or
* Walk to active lobby center → **E** → control panel (visitor/member)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://izzyshop-1.gitbook.io/izzyshop-docs/izzyshop-resources/izzy-dancing/installation.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
