# Workspaces

When working with Terraform at Enterprise level, you need to organize your infrastructure in different collections. Terrakube manages infrastructure collections with **workspaces**. A workspace contains everything Terraform needs to manage a given collection of infrastructure, so you can easily organize all your resources based in your requirements.

For example, you can create a workspace for dev environment and a different workspace for production. Or you can separate your workspaces based in your resource types, so you can create a workspace for all your SQL Databases and anothers workspace for all your VMS.

<figure><img src="https://content.gitbook.com/content/z07DOLykiAoqb1CSQVQz/blobs/r2LK35ZVkQDf51HKnwPJ/Untitled.drawio.png" alt=""><figcaption></figcaption></figure>

You can create unlimited workspaces inside each Terrakube Organization. In this section:

{% content-ref url="workspaces/creating-workspaces" %}
[creating-workspaces](https://docs.terrakube.io/2.19.0/user-guide/workspaces/creating-workspaces)
{% endcontent-ref %}

{% content-ref url="workspaces/terraform-state" %}
[terraform-state](https://docs.terrakube.io/2.19.0/user-guide/workspaces/terraform-state)
{% endcontent-ref %}

{% content-ref url="workspaces/variables" %}
[variables](https://docs.terrakube.io/2.19.0/user-guide/workspaces/variables)
{% endcontent-ref %}

{% content-ref url="workspaces/workspace-scheduler" %}
[workspace-scheduler](https://docs.terrakube.io/2.19.0/user-guide/workspaces/workspace-scheduler)
{% endcontent-ref %}
