All skills
cmb211087 avatar

/azure-diagrams

@ce0fc67

Comprehensive technical diagramming toolkit for solutions architects, presales, and developers. Creates Azure architecture diagrams (800+ Azure service icons), business process flows (swimlanes, workflows), ERD diagrams (database schemas), project timelines, UI wireframes, and network topology diagrams. Perfect for proposals, documentation, and architecture reviews. Also generates diagrams from Bicep, Terraform, and ARM templates.

Use this Skill: https://skilld.dev/gh/cmb211087/azure-diagrams-skill/azure-diagrams

This session only. Nothing lands on disk.

referencesazure-components.md

≈4.4k tokens on demand. Your agent reads this file only when SKILL.md points to it.

Azure Components Reference

Complete list of Azure components available in the diagrams library. As of diagrams 0.25.1 there are 842 Azure node classes across 32 modules. Regenerate this count and the full catalogue anytime with python scripts/list_azure_nodes.py (the class names below are validated against the pinned library by scripts/check_imports.py).

Quick Import Examples

# Most common services
from diagrams.azure.compute import FunctionApps, AKS, VM, AppServices, ContainerApps
from diagrams.azure.network import ApplicationGateway, LoadBalancers, VirtualNetworks, Firewall
from diagrams.azure.database import CosmosDb, SQLDatabases, CacheForRedis
from diagrams.azure.storage import BlobStorage, StorageAccounts, DataLakeStorage
from diagrams.azure.integration import LogicApps, ServiceBus, APIManagement, EventGridTopics
from diagrams.azure.security import KeyVaults, Sentinel, Defender
from diagrams.azure.identity import ActiveDirectory, ManagedIdentities, ConditionalAccess
from diagrams.azure.ml import CognitiveServices, MachineLearningServiceWorkspaces
from diagrams.azure.analytics import Databricks, SynapseAnalytics, EventHubs
from diagrams.azure.web import AppServices, StaticApps
from diagrams.azure.devops import AzureDevops, Pipelines, Repos
from diagrams.azure.monitor import Monitor, ApplicationInsights, LogAnalyticsWorkspaces

AI & Machine Learning (42 components)

diagrams.azure.aimachinelearning

from diagrams.azure.aimachinelearning import (
    AIStudio, AnomalyDetector, AzureAppliedAIServices, AzureOpenai,
    BotServices, CognitiveSearch, CognitiveServices, ComputerVision,
    ContentModerators, CustomVision, FaceApis, FormRecognizers,
    ImmersiveReaders, Language, LanguageUnderstanding, MachineLearning,
    MetricsAdvisor, Personalizers, QnaMakers, SpeechServices, TranslatorText
)

diagrams.azure.ml

from diagrams.azure.ml import (
    AzureOpenAI, AzureSpeechService, BatchAI, BotServices,
    CognitiveServices, GenomicsAccounts, MachineLearningServiceWorkspaces,
    MachineLearningStudioWebServicePlans, MachineLearningStudioWebServices,
    MachineLearningStudioWorkspaces
)

Analytics (20 components)

from diagrams.azure.analytics import (
    AnalysisServices, AzureDataExplorerClusters, AzureDatabricks,
    AzureSynapseAnalytics, AzureWorkbooks, DataExplorerClusters,
    DataFactories, DataLakeAnalytics, DataLakeStoreGen1, Databricks,
    EndpointAnalytics, EventHubClusters, EventHubs, HDInsightClusters,
    LogAnalyticsWorkspaces, PowerBiEmbedded, PowerPlatform,
    PrivateLinkServices, StreamAnalyticsJobs, SynapseAnalytics
)

Compute (56 components)

from diagrams.azure.compute import (
    # Core Compute
    VM, VMLinux, VMWindows, VirtualMachine, VMSS, VMScaleSet,
    AvailabilitySets, AutomanagedVM,
    
    # Containers
    AKS, ACR, ContainerApps, ContainerInstances, ContainerRegistries,
    KubernetesServices, ServiceFabricClusters, ManagedServiceFabric,
    
    # App Services
    AppServices, FunctionApps, AzureSpringApps, SpringCloud,
    
    # Virtual Desktop
    ApplicationGroup, HostGroups, HostPools, Hosts, Workspaces,
    CitrixVirtualDesktopsEssentials,
    
    # Other
    BatchAccounts, CloudServices, DiskEncryptionSets, Disks,
    DiskSnapshots, Images, SAPHANAOnAzure, SharedImageGalleries
)

Containers (7 components)

from diagrams.azure.containers import (
    AppServices, AzureRedHatOpenshift, BatchAccounts,
    ContainerInstances, ContainerRegistries, KubernetesServices,
    ServiceFabricClusters
)

Database (51 components)

diagrams.azure.database

from diagrams.azure.database import (
    CosmosDb, SQL, SQLDatabases, SQLServers, SQLManagedInstances,
    CacheForRedis, DataFactory, DataLake, DatabaseForMariadbServers,
    DatabaseForMysqlServers, DatabaseForPostgresqlServers,
    ElasticDatabasePools, SQLDatawarehouse, SynapseAnalytics
)

diagrams.azure.databases

from diagrams.azure.databases import (
    AzureCosmosDb, AzureSQL, AzureSQLVM, AzureSynapseAnalytics,
    CacheRedis, DataFactories, OracleDatabase, SQLDatabase,
    SQLElasticPools, SQLManagedInstance, SQLServer
)

DevOps (18 components)

from diagrams.azure.devops import (
    AzureDevops, Devops, DevopsStarter, Pipelines, Repos, Boards,
    Artifacts, TestPlans, ApplicationInsights, DevtestLabs,
    LabAccounts, LabServices, LoadTesting, ChangeAnalysis,
    Cloudtest, CodeOptimization, APIConnections, APIManagementServices
)

Identity (41 components)

from diagrams.azure.identity import (
    # Core Identity
    ActiveDirectory, AzureActiveDirectory, ADB2C, AzureADB2C,
    
    # Entra ID (new naming)
    EntraConnect, EntraDomainServices, EntraIDProtection,
    EntraManagedIdentities, EntraPrivlegedIdentityManagement, EntraVerifiedID,
    
    # Identity Protection
    ADIdentityProtection, ADPrivilegedIdentityManagement,
    ConditionalAccess, ManagedIdentities, AccessReview,
    
    # App Registration
    AppRegistrations, EnterpriseApplications, APIProxy,
    
    # Groups & Users
    Users, Groups, ExternalIdentities, AdministrativeUnits,
    
    # Security Features
    IdentityGovernance, GlobalSecureAccess, PrivateAccess, InternetAccess,
    AzureInformationProtection, InformationProtection, VerifiableCredentials
)

Integration (34 components)

from diagrams.azure.integration import (
    # API Management
    APIManagement, APIManagementServices, APIConnections,
    
    # Messaging
    ServiceBus, AzureServiceBus, ServiceBusRelays, Relays,
    
    # Events
    EventGridDomains, EventGridTopics, EventGridSubscriptions,
    SystemTopic, PartnerTopic, PartnerNamespace, PartnerRegistration,
    
    # Logic Apps
    LogicApps, LogicAppsCustomConnector, IntegrationAccounts,
    IntegrationServiceEnvironments, IntegrationEnvironments,
    
    # Data
    DataFactories, DataCatalog, AzureDataCatalog,
    
    # Other
    AppConfiguration, PowerPlatform, SendgridAccounts,
    SoftwareAsAService, StorsimpleDeviceManagers
)

IoT (33 components)

from diagrams.azure.iot import (
    # Core IoT
    IotHub, IotEdge, IotCentralApplications, IotHubSecurity,
    DeviceProvisioningServices, AzureIotOperations,
    
    # Digital Twins & Maps
    DigitalTwins, Maps, AzureMapsAccounts,
    
    # Events & Streaming
    EventHubs, EventHubClusters, EventGridSubscriptions,
    StreamAnalyticsJobs,
    
    # Time Series
    TimeSeriesInsightsEnvironments, TimeSeriesInsightsEventSources,
    TimeSeriesDataSets,
    
    # Edge & Stack
    AzureStack, StackHciPremium, Sphere,
    
    # Notifications
    NotificationHubs, NotificationHubNamespaces,
    
    # Windows IoT
    Windows10IotCoreServices, Windows10CoreServices
)

Management & Governance (33 components)

from diagrams.azure.managementgovernance import (
    # Monitoring
    Monitor, ApplicationInsights, Alerts, Metrics, ActivityLog,
    DiagnosticsSettings, LogAnalyticsWorkspaces,
    
    # Governance
    Policy, Blueprints, Compliance, CostManagementAndBilling,
    
    # Azure Arc
    AzureArc, ArcMachines, Machinesazurearc,
    
    # Other
    Advisor, AutomationAccounts, AzureLighthouse,
    CustomerLockboxForMicrosoftAzure, RecoveryServicesVaults,
    ResourceGraphExplorer, ServiceProviders, Solutions
)

Monitor (12 components)

from diagrams.azure.monitor import (
    Monitor, ApplicationInsights, LogAnalyticsWorkspaces,
    ActivityLog, AutoScale, AzureWorkbooks, ChangeAnalysis,
    DiagnosticsSettings, Logs, Metrics, NetworkWatcher,
    AzureMonitorsForSAPSolutions
)

Networking (79 components)

diagrams.azure.network

from diagrams.azure.network import (
    # Gateways & Load Balancing
    ApplicationGateway, LoadBalancers, FrontDoors,
    VirtualNetworkGateways, LocalNetworkGateways,
    
    # Virtual Networks
    VirtualNetworks, Subnets, NetworkInterfaces,
    VirtualWans, Connections,
    
    # Security
    Firewall, ApplicationSecurityGroups, DDOSProtectionPlans,
    NetworkSecurityGroupsClassic,
    
    # DNS
    DNSZones, DNSPrivateZones,
    
    # Routing
    RouteTables, RouteFilters, TrafficManagerProfiles,
    
    # Connectivity
    ExpressrouteCircuits, PrivateEndpoint,
    OnPremisesDataGateways, PublicIpAddresses,
    
    # Monitoring
    NetworkWatcher, CDNProfiles
)

diagrams.azure.networking (extended)

from diagrams.azure.networking import (
    # Additional components
    Bastions, Firewalls, Nat, IpGroups, IpAddressManager,
    PrivateLink, PrivateLinkServices, ProximityPlacementGroups,
    AzureFirewallManager, AzureFirewallPolicy,
    DNSPrivateResolver, DNSSecurityPolicy,
    WebApplicationFirewallPolicieswaf,
    TrafficController, VirtualRouter, VirtualWanHub,
    FrontDoorAndCDNProfiles, ConnectedCache
)

Security (22 components)

from diagrams.azure.security import (
    # Key & Secret Management
    KeyVaults,
    
    # Security Center & Defender
    SecurityCenter, Defender, MicrosoftDefenderForCloud,
    MicrosoftDefenderForIot, MicrosoftDefenderEasm,
    
    # Sentinel (SIEM/SOAR)
    Sentinel, AzureSentinel,
    
    # Identity Security
    AzureADIdentityProtection, AzureADPrivlegedIdentityManagement,
    AzureADRiskySignins, AzureADRiskyUsers,
    AzureADAuthenticationMethods, ConditionalAccess,
    MultifactorAuthentication, IdentitySecureScore,
    
    # Network Security
    ApplicationSecurityGroups,
    
    # Information Protection
    AzureInformationProtection,
    
    # Other
    ExtendedSecurityUpdates, Detonation
)

Storage (26 components)

from diagrams.azure.storage import (
    # Core Storage
    StorageAccounts, BlobStorage, QueuesStorage, TableStorage,
    AzureFileshares, GeneralStorage, ArchiveStorage,
    
    # Data Lake
    DataLakeStorage, DataLakeStorageGen1,
    
    # Premium Storage
    AzureNetappFiles, NetappFiles, AzureHcpCache,
    
    # Edge & Hybrid
    DataBox, DataBoxEdgeDataBoxGateway, AzureStackEdge,
    AzureDataboxGateway, Azurefxtedgefiler,
    
    # Data Management
    DataShares, DataShareInvitations, StorageSyncServices,
    StorsimpleDataManagers, StorsimpleDeviceManagers,
    
    # Backup
    RecoveryServicesVaults, ImportExportJobs,
    
    # Tools
    StorageExplorer
)

Web (20 components)

from diagrams.azure.web import (
    # App Service
    AppServices, AppServicePlans, AppServiceEnvironments,
    AppServiceCertificates, AppServiceDomains, AppSpace,
    
    # Static & Spring
    StaticApps, AzureSpringApps,
    
    # API
    APICenter, APIConnections, APIManagementServices,
    
    # CDN & Front Door
    FrontDoorAndCDNProfiles,
    
    # Media
    AzureMediaService, MediaServices,
    
    # Search & Cognitive
    Search, CognitiveSearch, CognitiveServices,
    
    # Communication
    Signalr, NotificationHubNamespaces,
    
    # Power Platform
    PowerPlatform
)

Migration (6 components)

from diagrams.azure.migration import (
    AzureDatabaseMigrationServices, DatabaseMigrationServices,
    MigrationProjects, DataBox, DataBoxEdge,
    RecoveryServicesVaults
)

General Purpose Icons (114 components)

For generic icons, placeholders, and UI elements:

from diagrams.azure.general import (
    # Resources
    AllResources, Resource, ResourceGroups, Subscriptions,
    ManagementGroups, Tags, Templates,
    
    # Files & Storage
    File, Files, FolderBlank, FolderWebsite, BlobBlock, BlobPage,
    
    # Development
    Code, Commit, Branch, Builds, Developertools, Powershell, Ftp,
    
    # Monitoring
    Dashboard, Workflow, Heart, Error, Information, Download,
    
    # Support
    HelpAndSupport, Support, Troubleshoot, Guide, Learn,
    
    # Marketplace
    Marketplace, MarketplaceManagement, FreeServices,
    
    # Management
    Gear, Controls, Extensions, Module, Scheduler
)

Special Categories

Blockchain

from diagrams.azure.blockchain import (
    AzureBlockchainService, BlockchainApplications, Consortium
)

Mixed Reality

from diagrams.azure.mixedreality import (
    RemoteRendering, SpatialAnchorAccounts
)

Azure Stack

from diagrams.azure.azurestack import (
    Capacity, InfrastructureBackup, MultiTenancy, Offers,
    Plans, Updates, UserSubscriptions
)

Intune

from diagrams.azure.intune import (
    Intune, IntuneAppProtection, Devices, DeviceCompliance,
    DeviceConfiguration, DeviceEnrollment, ClientApps
)

Newer services and the Custom() fallback

diagrams 0.25.x ships a dedicated diagrams.azure.newicons module alongside the expanded aimachinelearning, containers, managementgovernance, databases and networking modules. For brand-new Azure services the library has not caught up with yet, use a Custom() node pointing at an official icon SVG you download locally.

Licensing note: Microsoft's Azure architecture icons may be used in your own diagrams, but the terms do not allow redistributing or bundling the icon files in a third-party repository. Download them locally for Custom(); do not commit them here.

AKS Network Policy

Container networking control for Kubernetes:

# If available in diagrams library
from diagrams.azure.compute import AKS
from diagrams.azure.network import NetworkSecurityGroupsClassic

# Workaround using existing icons
aks = AKS("AKS + Network Policy")
nsg = NetworkSecurityGroupsClassic("Network Policy")

Azure Local (formerly Azure Stack HCI)

Hybrid infrastructure for edge and datacenter:

from diagrams.azure.azurestack import Capacity
from diagrams.custom import Custom

# Using Azure Stack icon as fallback
azure_local = Capacity("Azure Local")

# Or use custom icon if you have the SVG
# azure_local = Custom("Azure Local", "./icons/azure-local.svg")

Azure Linux

Microsoft's Linux distribution for containers:

from diagrams.azure.compute import VMLinux, AKS

# AKS nodes running Azure Linux
aks_linux = AKS("AKS\n(Azure Linux)")

# VM with Azure Linux
vm_linux = VMLinux("Azure Linux VM")

Azure Web PubSub

Real-time messaging service for WebSocket applications:

from diagrams.azure.web import Signalr
from diagrams.custom import Custom

# Signalr is the closest existing icon
pubsub = Signalr("Web PubSub")

# Or use custom icon
# pubsub = Custom("Web PubSub", "./icons/web-pubsub.svg")

Custom Icon Fallback Pattern

For icons not yet in the diagrams library:

from diagrams import Diagram, Cluster
from diagrams.custom import Custom

# Download official icons from:
# https://learn.microsoft.com/en-us/azure/architecture/icons/

with Diagram("Custom Icons Example", show=False, outformat="png"):
    # Use custom SVG files
    azure_local = Custom("Azure Local", "./icons/azure-local.svg")
    web_pubsub = Custom("Web PubSub", "./icons/web-pubsub.svg")

    azure_local >> web_pubsub

Icon Sources

Source URL Notes
Official Microsoft https://learn.microsoft.com/en-us/azure/architecture/icons/ Authoritative, regularly updated
Azure Icons Collection https://github.com/benc-uk/icon-collection Community curated, 705+ icons
az-icons.com https://az-icons.com/ Searchable, downloadable
Diagrams Library https://diagrams.mingrammer.com/docs/nodes/azure Built-in icons

Checking Icon Availability

This skill bundles a generator so you never have to hand-type or guess class names:

python scripts/list_azure_nodes.py            # summary: classes per module
python scripts/list_azure_nodes.py --markdown # full catalogue (module headings + class lists)
python scripts/list_azure_nodes.py --json     # machine-readable {module: [classes]}

Finding the Right Component

By Service Name

If you know the Azure service name, look in the relevant category:

  • App Service → compute or web
  • Azure SQL → database or databases
  • Cosmos DB → database
  • Functions → compute
  • AKS → compute or containers
  • Logic Apps → integration
  • Service Bus → integration
  • Event Grid → integration or iot
  • Event Hubs → analytics or iot

Duplicate Components

Some services appear in multiple modules. Generally:

  • Use the most specific module for your diagram type
  • database vs databases - both work, choose by personal preference
  • network vs networking - networking has more modern components

Missing Components

If a component isn't available:

  1. Use diagrams.azure.general for generic icons
  2. Use a related service icon
  3. Create a custom node with diagrams.custom.Custom

Best Practices

Importing

# Good - import what you need
from diagrams.azure.compute import FunctionApps, AKS
from diagrams.azure.database import CosmosDb

# Avoid - importing entire modules
from diagrams.azure import compute  # harder to read

Naming Consistency

# Use descriptive variable names
with Diagram("Architecture"):
    api_gateway = APIManagement("API Gateway")
    order_function = FunctionApps("Process Orders")
    order_db = CosmosDb("Orders DB")

Grouping Related Services

with Cluster("Data Tier"):
    cosmos = CosmosDb("Primary")
    redis = CacheForRedis("Cache")
    
with Cluster("Integration"):
    bus = ServiceBus("Events")
    logic = LogicApps("Workflows")

Source: SKILL.md on GitHub

2 warnings7mo4 checks · Risk SAFE
  • Gen Agent Trust Hub7mo

    The Azure Diagrams Skill is a professional toolkit for generating technical architecture diagrams. It provides comprehensive reference guides and scripts to facilitate the creation of diagrams using the 'diagrams' Python library and Graphviz. Analysis shows the skill follows best practices for file handling, implements appropriate sanitization for its transformation tasks, and contains no malicious code or exfiltration patterns.

  • Socket7mo

    No alerts

  • Snyk7mo

    Risk: MEDIUM · No issues

  • Runlayer7mo

    21/21 files flagged

Signed by skilld at ce0fc67. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 2 months ago.

Steadyupdated 3 months ago
Other metadata
compatibility
Requires the Graphviz system package and the Python diagrams library (>=0.25.1). Works with Claude Code, GitHub Copilot, Cursor, Windsurf, VS Code, and any Agent Skills or AGENTS.md compatible tool.
metadata
{
  "author": "community",
  "version": "2.0.0",
  "repository": "https://github.com/cmb211087/azure-diagrams-skill"
}

README badge

README badge for cmb211087/azure-diagrams-skill