> For the complete documentation index, see [llms.txt](https://laot7490.gitbook.io/ltbridge/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://laot7490.gitbook.io/ltbridge/how-it-works/modules-and-dependencies.md).

# Modules & Dependencies

Everything in LTBridge is a **module** — a small, focused piece of functionality you call through the `LT` namespace.

## Calling modules

Modules are grouped by category:

```lua
LT.Framework.GetPlayerName()      -- Framework
LT.Inventory.AddItem(...)         -- Inventory
LT.Target.AddSphereZone(...)      -- Target
LT.Notify.Send(...)               -- Notify
```

Your IDE autocomplete comes from `ltbridge/api.lua`, generated when you run `ltbridge init` or `ltbridge api`.

## How modules get included

LTBridge scans your Lua files for `LT.*` calls. When it finds one, it adds that module to your project. If that module depends on others, those are pulled in too.

Example: using `LT.Inventory.AddItem` might also require `@Framework/GetPlayer` behind the scenes. You don't manage that — LTBridge does.

## Managing modules manually

| Command                          | What it does                          |
| -------------------------------- | ------------------------------------- |
| `ltbridge add Target/*`          | Add all Target modules                |
| `ltbridge add Inventory/AddItem` | Add one specific module               |
| `ltbridge remove Notify`         | Remove a module                       |
| `ltbridge list`                  | See installed and available modules   |
| `ltbridge why Inventory/AddItem` | See why a module was included         |
| `ltbridge prune`                 | Remove modules you're no longer using |

## Bundle mode

When you run `ltbridge init`, you choose **bundle mode**. If enabled, LTBridge combines everything into three clean files:

* `shared.lua`
* `client.lua`
* `server.lua`

This keeps your `fxmanifest.lua` tidy. You can change this anytime with `"bundle": true` in `ltbridge/config.json`.

{% hint style="info" %}
Use `ltbridge build -w` during development. Use `ltbridge build` (without `-w`) for a one-off production build. The watcher skips rebuilds when nothing relevant changed during the same session.
{% endhint %}

Next: [Supported Resources](/ltbridge/how-it-works/supported-resources.md)
