# Reusing template code To reuse code across different Coder templates, such as common scripts or resource definitions, we suggest using [Terraform Modules](https://developer.hashicorp.com/terraform/language/modules). You can store these modules externally from your Coder deployment, like in a git repository or a Terraform registry. This example shows how to reference a module from your template: ```tf data "coder_workspace" "me" {} module "coder-base" { source = "github.com/my-organization/coder-base" # Modules take in variables and can provision infrastructure vpc_name = "devex-3" subnet_tags = { "name": data.coder_workspace.me.name } code_server_version = 4.14.1 } resource "coder_agent" "dev" { # Modules can provide outputs, such as helper scripts startup_script=<