> For the complete documentation index, see [llms.txt](https://mango-5m.gitbook.io/mango5m-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mango-5m.gitbook.io/mango5m-docs/resources/mango-mdt/getting-started/introduction.md).

# Introduction

What Mango MDT is, the modules it ships with, and the ideas behind how it's built.

**Mango MDT** is a modular Mobile Data Terminal for FiveM roleplay servers — a full police records and dispatch system rendered as an in-game tablet. Officers physically hold a tablet prop while it's open, and everything from 911 calls to evidence chain-of-custody runs through it.

## Modules

Every feature is a self-contained plugin. This is what ships out of the box:

| Module              | What it does                                                                                              |
| ------------------- | --------------------------------------------------------------------------------------------------------- |
| **Dispatch**        | Live 911 calls, HUD alert cards, a quick call window, GPS blips, crime hotspots, officer map.             |
| **Person Database** | Civilian profiles read live from your framework — flags, officer notes, licenses, warrant banners.        |
| **Warrants**        | Full warrant workflow: draft → approval → active → executed, printable in-game documents, Discord export. |
| **Evidence Locker** | Book items straight from an officer's inventory, chain of custody, checkout/return, map locations.        |
| **Bodycam**         | Wearable camera item, live viewing by supervisors, simulated storage, Discord footage records.            |
| **CCTV**            | Placeable cameras, live viewing, evidence snapshots.                                                      |
| **Fines**           | Issue fines from the MDT, collect them through your billing resource, auto-sync when paid.                |
| **Cases**           | Case files linking persons, warrants, evidence, and reports into one investigation record.                |
| **Reports**         | Incident/arrest report writing.                                                                           |
| **Vehicles**        | Vehicle records and lookups.                                                                              |
| **Investigations**  | Long-running investigation boards with restore/archive.                                                   |
| **Departments**     | Multi-department support — rosters, ranks, career info, permission editing, boss hiring.                  |
| **Officers**        | Officer profiles — certifications, field training panel, case involvement.                                |
| **FTO**             | Field-training evaluations with configurable categories, phases, and pass marks.                          |
| **Applications**    | Recruitment applications with review workflow.                                                            |
| **Resignations**    | Resignation submissions with review workflow.                                                             |
| **Activity**        | Audit/activity feeds.                                                                                     |
| **Global Search**   | One search box across every module.                                                                       |
| **Notifications**   | In-MDT notification center with badges.                                                                   |

## Design principles

* **Bridge architecture.** The MDT never calls your framework, inventory, notify, dispatch, or billing resource directly — everything goes through a bridge layer with swappable providers. **ESX Legacy, QBCore, and Qbox all ship implemented** — switching framework is one config line — and supporting any other resource is one file, not a core edit. See [Framework and Bridges](/mango5m-docs/resources/mango-mdt/configuration/framework-and-bridges.md).
* **Server-side trust boundary.** Every request from the UI is validated and permission-checked on the server. Permissions are DB-driven and editable live in-game.
* **One config file per concern.** You only ever open the config file for the module you're changing.
* **No build step.** The UI is vanilla HTML/CSS/JS — you can read and edit every line you own.
* **Department branding.** A server-wide accent colour, overridable per department (police blue, sheriff gold, …) — the whole UI re-skins itself automatically.

## A clean start

Mango MDT ships with **no sample data**. A fresh install starts empty — every record your officers see was created on your server, by your players. The only seeded rows are structural: the three core permissions and the default `police` department from `sql/install.sql`.
