> For the complete documentation index, see [llms.txt](https://jiffyjrdevelopment.gitbook.io/jiffyjrdevelopmentdocs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://jiffyjrdevelopment.gitbook.io/jiffyjrdevelopmentdocs/jiffy-jr-development-docs/jiffy-minigames/introduction.md).

# Introduction

**One resource. 12 minigames. Zero script rewrites.**

jiffy-minigames is a FiveM NUI resource that ships a full set of polished minigames and a drop-in compatibility layer that intercepts calls your existing scripts already make — to `ps-ui`, `mhacking`, `lockpick`, `safecracker`, `datacrack`, `qb-minigames`, and more — and serves them without touching any of those scripts.

Works on **QBCore**, **ESX**, and **standalone** servers.

## What's included

| #  | Game                                                                                                  | Description                                                                |
| -- | ----------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
| 1  | [Circle](/jiffyjrdevelopmentdocs/jiffy-jr-development-docs/jiffy-minigames/games/circle.md)           | Spinning needle — hit the zone when it passes                              |
| 2  | [Skillbar](/jiffyjrdevelopmentdocs/jiffy-jr-development-docs/jiffy-minigames/games/skillbar.md)       | Moving bar — stop it inside the success zone                               |
| 3  | [Lockpick](/jiffyjrdevelopmentdocs/jiffy-jr-development-docs/jiffy-minigames/games/lockpick.md)       | Push pins to the shear line before your pick breaks                        |
| 4  | [Safecrack](/jiffyjrdevelopmentdocs/jiffy-jr-development-docs/jiffy-minigames/games/safecrack.md)     | Spin the dial to find each hidden notch                                    |
| 5  | [Keypad](/jiffyjrdevelopmentdocs/jiffy-jr-development-docs/jiffy-minigames/games/keypad.md)           | Memorize and type back a digit sequence on a worn keypad                   |
| 6  | [Pattern](/jiffyjrdevelopmentdocs/jiffy-jr-development-docs/jiffy-minigames/games/pattern.md)         | Repeat a crystal grid light sequence                                       |
| 7  | [Memory](/jiffyjrdevelopmentdocs/jiffy-jr-development-docs/jiffy-minigames/games/memory.md)           | Flip cards to find all matching gem pairs                                  |
| 8  | [Fingerprint](/jiffyjrdevelopmentdocs/jiffy-jr-development-docs/jiffy-minigames/games/fingerprint.md) | Drag the matching scotch-tape print onto the scanner                       |
| 9  | [Thermite](/jiffyjrdevelopmentdocs/jiffy-jr-development-docs/jiffy-minigames/games/thermite.md)       | Guide the flame along the fuse without straying                            |
| 10 | [Wirecutting](/jiffyjrdevelopmentdocs/jiffy-jr-development-docs/jiffy-minigames/games/wirecutting.md) | Cut the correct wire each round                                            |
| 11 | [Hackgrid](/jiffyjrdevelopmentdocs/jiffy-jr-development-docs/jiffy-minigames/games/hackgrid.md)       | Breach-protocol hex matrix — upload all daemons before the buffer exhausts |
| 12 | [Typer](/jiffyjrdevelopmentdocs/jiffy-jr-development-docs/jiffy-minigames/games/typer.md)             | Type the terminal command exactly before time runs out                     |

## Compatibility at a glance

| Replaces            | Method                                            |
| ------------------- | ------------------------------------------------- |
| `ps-ui`             | Built-in adapter (event) + optional shim (export) |
| `mhacking`          | Built-in adapter                                  |
| `lockpick`          | Built-in adapter + optional shim                  |
| `safecracker`       | Built-in adapter + optional shim                  |
| `datacrack`         | Built-in adapter + optional shim                  |
| `qb-minigames`      | Built-in adapter + optional shim                  |
| `xmmx_circlesgame`  | Built-in adapter + optional shim                  |
| `pd-safe`           | Standalone shim (`compat/pd-safe`)                |
| `utk_fingerprint`   | Standalone shim (`compat/utk_fingerprint`)        |
| `ultra-keypackhack` | Standalone shim (`compat/ultra-keypackhack`)      |

See [Compatibility Layer](/jiffyjrdevelopmentdocs/jiffy-jr-development-docs/jiffy-minigames/compatibility.md) for full details.

## Quick start

```lua
-- Block the thread until the player wins or fails:
local success = exports['jiffy-minigames']:Circle({ difficulty = 'hard' })

-- Or use a callback:
exports['jiffy-minigames']:Hackgrid({ daemons = 3, time = 40 }, function(success)
    if success then
        TriggerServerEvent('my-heist:server:unlockDoor')
    end
end)
```

Continue to [Installation](/jiffyjrdevelopmentdocs/jiffy-jr-development-docs/jiffy-minigames/installation.md) for installation and `server.cfg` setup.
