> For the complete documentation index, see [llms.txt](https://codemash.gitbook.io/codemash/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://codemash.gitbook.io/codemash/cloud/concepts/modules.md).

# Modules

A project is made of modules — Database, Files, Email and the rest — that you switch on when you need them.

A backend has many jobs: store data, keep files, sign users in, send messages, take payments. You rarely need all of them on day one. Norbix splits them into **modules**; you switch on only the ones you use.

## How Norbix models it

Each module has its own menu in Cloud, its own settings, its own permissions (`database:read`, …) and its own endpoints. A module that is off shows an **ENABLE** button instead of its screens.

| Module                                        | Cloud menu | What it does                                              | On when the project is created           |
| --------------------------------------------- | ---------- | --------------------------------------------------------- | ---------------------------------------- |
| [Membership](/codemash/cloud/membership.md)   | Membership | Your end users: sign-in, roles, policies                  | yes (shown as **Users** on the overview) |
| [Database](/codemash/cloud/database.md)       | Database   | Collections with schemas, records, taxonomies, aggregates | yes                                      |
| [Files](/codemash/cloud/files.md)             | Files      | File storage through your storage provider                | no                                       |
| [Code](/codemash/cloud/code.md)               | Code       | Cloud functions and the function marketplace              | no                                       |
| [Email](/codemash/cloud/emails.md)            | Emails     | Email templates, campaigns, providers                     | no                                       |
| [Push](/codemash/cloud/push.md)               | Push       | Mobile push notifications                                 | no                                       |
| [SMS](/codemash/cloud/sms.md)                 | Sms        | Text messages                                             | no                                       |
| [Payments](/codemash/cloud/payments.md)       | Payments   | Payment providers and their events                        | no                                       |
| [Tasks (Scheduler)](/codemash/cloud/tasks.md) | Tasks      | Jobs on a schedule (cron)                                 | no                                       |
| [Logs](/codemash/cloud/logs.md)               | Logs       | The project's log and log sinks                           | no                                       |

AI integrations (LLM providers and MCP servers) are not a module: they are under Project → **Integrations**.

<figure><img src="https://712692422-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHy372bqsaex2cqS3ikhL%2Fuploads%2Fgit-blob-493b2c4f0966a70d26c3d95b87de1f5b5a2aac30%2Fquickstart-6.png?alt=media" alt="Project overview with Users and Database active and Available modules with Enable links"><figcaption><p>Project overview: the modules that are on at the top, the others under "Available modules" with <strong>Enable</strong>.</p></figcaption></figure>

* **Switch a module on:** project overview → the module's card → **Enable**, or open the module from the left menu and press **ENABLE**. The overview counts how many modules you have left on your plan ("You have 7 modules left").
* **Switch it off:** the module's **Settings** screen → disable. Disabling a module deletes its data — read the confirmation.
* **What a module shares with others** is explained once, in the concepts [Integrations](/codemash/cloud/concepts/integrations.md), [Triggers](/codemash/cloud/concepts/triggers.md), [Campaigns](/codemash/cloud/concepts/campaigns.md) and [Message templates](/codemash/cloud/concepts/message-templates.md).
* **From code:** every module has `PUT /v3/<module>/enable` and `/disable` on the Hub (for example `/v3/database/enable`, `/v3/notifications/email/enable`).

## Where you use it

* Cloud: [Project overview](/codemash/cloud/project.md) · each module's overview page (links in the table)
* Concepts: [Overview](/codemash/cloud/concepts.md) · [Permissions](/codemash/cloud/concepts/permissions.md)
* API: [Database → Module](/codemash/api-reference/database/module.md) · SDK: [Install the SDK](/codemash/sdks/install.md) · CLI: [CLI](/codemash/cli/cli.md)
