# BDTK

{% hint style="danger" %}
**THIS SECTION IS A WORK IN PROGRESS BDTK WILL REPLACE BOII\_UTILS EVENTUALY.**\
**EVERYTHING WILL BE DOCUMENTED FIRST.**
{% endhint %}

<figure><img src="https://3046942752-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHfd391cB6wDC8S3yHcie%2Fuploads%2Fva5RTVsBV1KXfZxiuYsJ%2Fbdtkthumb.jpg?alt=media&#x26;token=33e507b8-753a-4c9e-b09d-73dc9a1a972e" alt=""><figcaption></figcaption></figure>

***

## What is BDTK?

Normally? **BOII Development Tool Kit**\
When it works? **Big Damn Time-saving Kit**\
When it doesn’t? **Broken Dumbass Time Killer**

BDTK is the next evolution of `boii_utils` - rewritten, reorganized, and refined for modern FiveM scripting.

It’s still modular, still framework-agnostic, but now with tighter internals, smarter structure, and a more focused set of tools. From framework bridging to utility wrappers, animation helpers to UI fallbacks - it’s built to slot into any dev stack and cut the busywork out of your workflow.

No bloat. No gatekeeping. No nonsense.\
Just dependable functions, clean patterns, and a codebase that stays out of your way.

***

## Who Is It For?

* **Framework developers** who need clean, reusable utility modules for base functionality.
* **Script authors** who want their releases to support multiple frameworks with minimal effort.
* **Solo scripters** tired of rewriting the same junk over and over again.
* **Teams** looking for a shared library of tools to streamline development across projects.

Whether you're writing scripts or an entire framework, BDTK helps cut the fat and scale the logic.

***

## Why Should I Use It?

* **Framework Bridge** – Built to abstract and unify major frameworks (`qb`, `esx`, `ox`, `nd`, `boii`, etc.) so you don’t have to write double logic.
* **Modular by Default** – Use only what you need. Every module is isolated, with no hard dependencies on the rest.
* **Less Repetition** – Handles the common patterns and boring parts so you can focus on actual logic, not boilerplate.
* **Consistent Conventions** – Shared structure and naming across modules keeps your code clean and predictable.
* **Dev Time Saver** – Speeds up development with drop-in systems, helper functions, and sane defaults.

***

## What Does It Provide?

BDTK is split into multiple categories of modules:

#### Resource Bridges

* **Framework Bridge** - Currently compatible with ESX, QB-Core, QBox, Ox Core, or ND Core.
* **Notification Bridge** - Currently compatible with bduk, boii\_ui, es\_extended, okokNotify, ox\_lib, qb-core.
* **DrawText UI Bridge** - Currently compatible with boii\_ui, es\_extended, okokNotify, ox\_lib, qb-core.

#### Standalone Systems

* **Callbacks** - Full client/server callback handling without framework dependencies.
* **Commands** - Built-in permissions, Ace support, and command registration.
* **Licences** - Theory/practical tests, points, revoking—DMV-style, but smarter.
* **XP System** - Custom growth curves, XP types, and server-wide level tracking.

#### Utility Modules

* **Appearance** - Appearance, clothing, tattoos, and shared styling logic.
* **Vehicles** - Entity-safe functions for customization, storage, and behavior.
* **Items** - Usable item registry outside of any core system.
* **Methods** - Attach runtime functions to players, vehicles, or anything else.
* **Player Helpers** - Animations, props, directions, and ped-related helpers.
* **Timestamps** - Server-safe date/time utils for consistent formatting.
* **Environment** - Time, weather, seasonal effects, and sync helpers.
* **Entities** - Utility functions for managing NPCs, vehicles, and objects.
* **Profanity** - Handles profanity related filtering and replacing.
* Buckets - Routing bucket handling and static data storage.

#### Smart Libraries

* **Geometry** - Vector math, angles, zones, distance, and shape logic.
* **Maths** - Extended math with curves, clamping, interpolation, and more.
* **Strings** - Pad, slugify, wrap, and format anything text-based.
* **Tables** - Merge, clone, randomize, and clean up Lua tables.
* **Keys** - Named constants for all common input keys, with helpers.

***

## How Is It Structured?

Every module in BDTK is fully self-contained — no tangled dependencies, no weird global hacks.\
They’re designed to be loaded individually or accessed cleanly through the central `bdtk.get()` system.

BDTK is:

* **Bridge-Based** – Framework functions are abstracted and unified behind a common API.
* **Environment-Aware** – Modules work on the client, server, or both depending on context.
* **Drop-In Ready** – Use one module or all of them. It won’t break if you don’t use the full set.
* **Scalable by Design** – Built to grow with your project without becoming a mess.

***

## Quick Install

To get setup using **BDTK** follow these brief steps:

{% stepper %}
{% step %}
**Download BDTK**

Download the Latest Release of BDTK from GitHub.
{% endstep %}

{% step %}
**Add It To Your Server**

Drop `bdtk` into your server resources.
{% endstep %}

{% step %}

#### Add It To Your Server Config

Add `ensure bdtk` into your `server.cfg` make sure this line is **above** any resource requiring it.
{% endstep %}

{% step %}
**Insert The SQL**

Add the included `REQUIRED.sql` into your database, this is required for user accounts and some standalone systems.
{% endstep %}

{% step %}
**Restart Your Server**

Restart your server and BDTK will be up and running, all bridges run auto-detection and have safe fall backs if none of the supported resources are found. To change default configuration settings you can do this via `convars` for more on this read: **Configuring BDTK**
{% endstep %}
{% endstepper %}

***

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th data-hidden data-card-cover data-type="files"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>Guides</td><td><a href="https://3046942752-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHfd391cB6wDC8S3yHcie%2Fuploads%2F10X4tmvg6ShzhiE9fYmm%2Fplug_guides_gitbook.png?alt=media&#x26;token=c5301dc7-3451-4c41-b34d-83a718acc294">plug_guides_gitbook.png</a></td><td><a href="bdtk/guides">guides</a></td></tr><tr><td>API Reference</td><td><a href="https://3046942752-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHfd391cB6wDC8S3yHcie%2Fuploads%2FuGaQrq6I1z0alArNSvd3%2Fplug_api_gitbook.png?alt=media&#x26;token=bb331960-b6ce-4aa5-b770-90e0a236fd3c">plug_api_gitbook.png</a></td><td><a href="bdtk/api">api</a></td></tr></tbody></table>
