What is azd?
The Azure Developer CLI (or azd) is an
open-source tool
that provides higher-level, application developer-friendly commands that map to key stages in your developer workflow — so you can focus
on writing application code instead of focusing on atomic operations on Azure resources.
What is an azd-template?
Azure Developer CLI templates
(azd-templates) are sample repositories
created — using Azure Developer CLI defined conventions — to include the application code, tools, and infrastructure code required to
streamline your CI/CD pipelines. This provides a repeatable foundation on which other teams can build, customize, or extend the default solution.
How do I use azd-templates?
With azd-templates, the path from code to cloud is just three steps:
- Discovery — find a template
- Deployment —
azd up to deploy it - Customization — modify app code or config
Prerequisites
To run successful azd deployments, install the following:
- AZD — Azure Developer CLI
(install instructions)
- PWSH — PowerShell latest version
(install instructions)
- Application Development SDK for sample apps:
How do I discover one?
There are a couple of ways to discover existing azd-template-tagged repositories:
traditional search engines, GitHub Search, blog posts… or — what we are trying to solve here — a curated catalog.
Using this catalog
Each template in the catalog is associated with:
- Architecture diagram
- Template repository
- Publication date
- Contributor identity
- Description
- Service tags (for architecture components)
- Language tags (for application code)
- Demo guide — what a trainer can demo, and what a learner can take away
The catalog provides both search (by template name) and filter (by criteria — single or combined).
How do I create templates?
There are a few different ways to create azd templates, depending on your starting point. If you want to provide a full
demo scenario for Trainer-Demo-Deploy, use the
trainer-demo-deploy
repo, which contains the following structure:
├── .devcontainer [ For DevContainer ]
├── demoguide [ demoguide.md + screenshots ]
│ ├── demoguide.md [ Step-by-step demo guide ]
│ └── screenshot1.png [ Screenshots used in the guide ]
├── infra [ Creates and configures Azure resources ]
│ ├── main.bicep [ Resource Group + module deployment ]
│ ├── main.parameters.json [ Bicep parameters ]
│ └── modulename.bicep [ Bicep modules used by main.bicep ]
├── src [ App code ]
└── azure.yaml [ App + Azure resource description, name & metadata ]
Replace the placeholder files with your own template files, then update azure.yaml
— especially name and metadata. Keep the naming convention
tdd-azd-…; the metadata feeds the azd KPI reports.
See the Contributor Guide for the full
step-by-step PR workflow.
azd conventions
Want to learn more? Read the product group's
azd conventions.
Not all guidelines are required for Trainer-Demo-Deploy scenarios.
How do I contribute templates?
There are several ways to contribute to Trainer-Demo-Deploy:
- Pick up an open issue — see the
list of open issues.
- Add a complete demo scenario — follow the steps in
Contribute a template.
- Improve an existing scenario — open an issue on the scenario's repo (linked from its catalog card)
or on this repo.
An internal team reviews submissions: validates that templates function as designed, accepts and closes the issue,
or suggests modifications and leaves the issue open.
How are templates rated?
This catalog contains both Microsoft Technical Trainer (MTT)-authored and Microsoft Certified Trainer (MCT)-contributed templates.
Creating and maintaining templates is not trivial, so we assume your contribution reflects a real classroom need.
We don't currently rate templates, except for the new
and hot tags, which we refresh monthly. Longer term
we may add tags for "recently updated," "most stars," "most forks," and similar criteria.
How do I request a template?
Have an architecture in mind but can't find an existing azd template to jumpstart it? You can build it yourself and contribute it back —
or open an issue asking the community.
We're also considering a help wanted tag that lets contributors
add an architecture diagram without a backing repository. Community members can then:
- Up-vote the issue to signal priority
- Build and contribute the template for it