Sobre o projeto

Diagrams é uma biblioteca Python de código aberto que permite aos desenvolvedores criar diagramas de arquitetura de sistemas em nuvem usando código Python, seguindo a filosofia 'Diagrama como Código'. A ferramenta foi projetada para prototipar novos designs de arquitetura de sistemas sem depender de ferramentas de design tradicionais, e também pode ser usada para documentar infraestruturas existentes. Os principais recursos incluem: - Suporte aos principais provedores de nuvem: AWS, Azure, GCP, IBM, Kubernetes, Alibaba Cloud, Oracle Cloud, OpenStack, Firebase, DigitalOcean, Elastic, OutScale e outros - Suporte a nós locais (on-premises), serviços SaaS e principais frameworks/linguagens de programação - Suporte ao modelo C4 para diagramas de arquitetura - Integração com controle de versão para rastrear mudanças na arquitetura - Um playground online em diagrams.mingrammer.com/playground que roda no navegador via Pyodide, sem necessidade de instalação - Exportação nos formatos PNG, SVG e JPEG A biblioteca usa Graphviz para renderizar diagramas e requer Python 3.9 ou superior. A instalação é simples via pip, pipenv ou poetry. Projetos notáveis que usam Diagrams incluem Apache Airflow (para gerar diagramas de arquitetura na documentação), Cloudiscovery (para analisar e visualizar recursos em nuvem), Airflow Diagrams (para visualizar DAGs do Airflow), KubeDiagrams (para gerar diagramas de arquitetura Kubernetes a partir de manifests) e AWS CloudFormation Diagrams (para gerar diagramas a partir de modelos CloudFormation). O projeto é licenciado sob MIT e possui uma comunidade ativa de contribuidores. Uma implementação em Go (go-diagrams) também está disponível para desenvolvedores familiarizados com Go.