Skip to main content

a collection of patterns for diagrams that can be reused in different projects

Project description

diagrams-patterns

  • diagrams should only used for managing the basic shapes of the cloud components
  • but there are standard patterns usually used in cloud architecture, we don't need to draw them from scratch
  • e.g. VPC with public/private subnets, NAT gateway, etc.

diagrams-patterns is a collection of patterns for diagrams that can be reused in different projects.

Features

  • aws vpc, subnets with styles
  • aws overlapping az on subnets
    • calculate the position based on the number of az and subnets
    • store and reuse the calculated position
  • aws grid subnets with az
    • use 'anchor', a hidden node, to align the subnets
    • not really work
  • dsl investigate
    • dsl 2 py 2 diagrams (refer to d2)

Roadmap

Currently, the diagrams-patterns and diagrams-exporters are built as 'diagrams'-extensions. But since the diagrams is inactive, introducing new tools is a necessary step, e.g. d2.

At that time, the diagrams-patterns should be a standalone tool, which provide a standard DSL to describe the common patterns in cloud architecture (or other kinds of diagrams). Then, you can translate the DSL to different tools, e.g. diagrams, d2, etc.

The diagrams-exporters plays another role to facilitate with productive tools, e.g. terraform, aws cli, etc. It read the metadata, convert to DSL, then generate the diagrams.

A possible structure is:

flowchart BT
  subgraph diagram-exporters
    terraform-exporter
    awscli-exporter
    kubectl-exporter
  end

  subgraph diagrams-patterns
    subgraph common-patterns
      c4-pattern
      layer-arch-pattern    
    end

    subgraph cloud-patterns
      aws-pattern
      azure-pattern
    end

    subgraph dsl
      dsl-parser

      dsl-to-diagrams
      dsl-to-d2
      dsl-to-mermaid
    end
  end

  diagrams-patterns --> diagram-exporters
  diagrams --> diagrams-patterns
  d2 --> diagrams-patterns
  plantuml --> diagrams-patterns
  
  graphviz --> diagrams
  graphviz --> d2

  plantuml

Reference

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

diagrams_patterns-0.1.0a1.tar.gz (5.9 kB view details)

Uploaded Source

Built Distribution

diagrams_patterns-0.1.0a1-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file diagrams_patterns-0.1.0a1.tar.gz.

File metadata

  • Download URL: diagrams_patterns-0.1.0a1.tar.gz
  • Upload date:
  • Size: 5.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.0 Linux/5.15.133.1-microsoft-standard-WSL2

File hashes

Hashes for diagrams_patterns-0.1.0a1.tar.gz
Algorithm Hash digest
SHA256 b1dd9283e627850cd63b5a5fecb7ea33550ca375fb6ab6d19db0c7ebb5b325e4
MD5 d57cadeae2527fb3a24b3646b161cfff
BLAKE2b-256 fceba3506413aa0ddd780338b393193ea0518746531534887e717e5f161cfbc3

See more details on using hashes here.

File details

Details for the file diagrams_patterns-0.1.0a1-py3-none-any.whl.

File metadata

  • Download URL: diagrams_patterns-0.1.0a1-py3-none-any.whl
  • Upload date:
  • Size: 7.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.0 Linux/5.15.133.1-microsoft-standard-WSL2

File hashes

Hashes for diagrams_patterns-0.1.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 cf17be3f8140e1c6e8296caaea68fc94bf04adba416e3c0a95b750adfb4f039c
MD5 4036280566334027e7978cec0606af45
BLAKE2b-256 763321c6b3029f8b000a3385e07d0eaf593d8e4da83ed28dc258b2699253dca6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page