diff --git a/README.md b/README.md index 194996902..60a51d5ed 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,11 @@ ![alibaba cloud provider](https://img.shields.io/badge/provider-AlibabaCloud-orange) ![oracle cloud provider](https://img.shields.io/badge/provider-OracleCloud-orange?logo=oracle&color=f80000) ![programming provider](https://img.shields.io/badge/provider-Programming-orange?color=5f87bf) +![firebase provider](https://img.shields.io/badge/provider-Firebase-orange?logo=firebase&color=FFCA28) +![elastic provider](https://img.shields.io/badge/provider-Elastic-orange?logo=elastic&color=005571) +![saas provider](https://img.shields.io/badge/provider-SaaS-orange?color=5f87bf) + +Buy Me A Coffee **Diagram as Code**. diff --git a/autogen.sh b/autogen.sh index 766881bcc..1486dd0be 100755 --- a/autogen.sh +++ b/autogen.sh @@ -4,7 +4,7 @@ set -e app_root_dir="diagrams" # NOTE: azure icon set is not latest version -providers=("onprem" "aws" "azure" "gcp" "k8s" "alibabacloud" "oci" "programming") +providers=("onprem" "aws" "azure" "gcp" "firebase" "k8s" "alibabacloud" "oci" "programming" "saas" "elastic" "generic") if ! [ -x "$(command -v round)" ]; then echo 'round is not installed' diff --git a/config.py b/config.py index 85affc3e6..e5bba3a26 100644 --- a/config.py +++ b/config.py @@ -11,7 +11,7 @@ DIR_RESOURCE = "resources" DIR_TEMPLATE = "templates" -PROVIDERS = ("base", "onprem", "aws", "azure", "gcp", "k8s", "alibabacloud", "oci", "programming") +PROVIDERS = ("base", "onprem", "aws", "azure", "gcp", "firebase", "k8s", "alibabacloud", "oci", "programming", "saas", "elastic", "generic") ######################### # Resource Processing # @@ -29,10 +29,14 @@ "aws": ("Amazon-", "AWS-"), "azure": ("Azure-",), "gcp": ("Cloud-",), + "firebase": ("Cloud-",), "k8s": (), "alibabacloud": (), "oci": ("OCI-",), "programming": (), + "saas": (), + "elastic": (), + "generic": (), } ######################### @@ -48,14 +52,17 @@ TMPL_MODULE = "module.tmpl" UPPER_WORDS = { - "aws": ("aws", "api", "ebs", "ec2", "efs", "emr", "rds", "ml", "mq", "nat", "vpc", "waf"), + "aws": ("aws", "api", "ebs", "ec2", "efs", "emr", "rds", "ml", "mq", "nat", "vpc", "waf", "sdk"), "azure": ("ad", "b2c", "ai", "api", "cdn", "ddos", "dns", "fxt", "hana", "hd", "id", "sap", "sql", "vm"), "gcp": ("gcp", "ai", "api", "cdn", "dns", "gke", "gpu", "iap", "ml", "nat", "os", "sdk", "sql", "tpu", "vpn"), + "firebase": ("ab", "fcm", "ml"), "k8s": ( "api", "cm", "ccm", "crb", "crd", "ds", "etcd", "hpa", "k8s", "ns", "psp", "pv", "pvc", "rb", "rs", "sa", "sc", "sts", "svc", ), "oci": ("oci",), + "elastic": ("apm", "siem", "ece", "eck"), + "generic": ("vpn",), } TITLE_WORDS = { @@ -75,8 +82,10 @@ "onprem": { "ci": { "Circleci": "CircleCI", + "Gitlabci": "GitlabCI", "Travisci": "TravisCI", "Teamcity": "TC", + "Zuulci": "ZuulCI", }, "container": { "Rkt": "RKT", @@ -132,6 +141,8 @@ "database": { "DatabaseMigrationService": "DMS", "DocumentdbMongodbCompatibility": "DocumentDB", + "DynamodbDax": "DAX", + "DynamodbGlobalSecondaryIndex": "DynamodbGSI", "Database": "DB", "Dynamodb": "DDB", "Elasticache": "ElastiCache", @@ -144,6 +155,9 @@ "engagement": { "SimpleEmailServiceSes": "SES", }, + "general": { + "GenericOfficeBuilding": "OfficeBuilding", + }, "integration": { "SimpleNotificationServiceSns": "SNS", "SimpleQueueServiceSqs": "SQS", @@ -151,6 +165,7 @@ }, "iot": { "Freertos": "FreeRTOS", + "IotHardwareBoard": "IotBoard", }, "management": { "SystemsManager": "SSM", @@ -176,6 +191,10 @@ "Cloudhsm": "CloudHSM", "DirectoryService": "DS", "FirewallManager": "FMS", + "IdentityAndAccessManagementIamAccessAnalyzer": "IAMAccessAnalyzer", + "IdentityAndAccessManagementIamAWSSts": "IAMAWSSts", + "IdentityAndAccessManagementIamPermissions": "IAMPermissions", + "IdentityAndAccessManagementIamRole": "IAMRole", "IdentityAndAccessManagementIam": "IAM", "KeyManagementService": "KMS", "ResourceAccessManager": "RAM", @@ -228,6 +247,11 @@ "Storage": "GCS", }, }, + "firebase": { + "grow": { + "Messaging": "FCM" + } + }, "k8s": { "clusterconfig": { "Limits": "LimitRange", @@ -341,4 +365,11 @@ "Typescript": "TypeScript" }, }, + "saas": {}, + "elastic": { + "elasticsearch": { + "Logstash": "LogStash", + } + }, + "generic": {}, } diff --git a/diagrams/aws/database.py b/diagrams/aws/database.py index 840653631..145fcb5da 100644 --- a/diagrams/aws/database.py +++ b/diagrams/aws/database.py @@ -24,6 +24,18 @@ class DocumentdbMongodbCompatibility(_Database): _icon = "documentdb-mongodb-compatibility.png" +class DynamodbDax(_Database): + _icon = "dynamodb-dax.png" + + +class DynamodbGlobalSecondaryIndex(_Database): + _icon = "dynamodb-global-secondary-index.png" + + +class DynamodbTable(_Database): + _icon = "dynamodb-table.png" + + class Dynamodb(_Database): _icon = "dynamodb.png" @@ -60,6 +72,8 @@ class Timestream(_Database): DMS = DatabaseMigrationService DocumentDB = DocumentdbMongodbCompatibility +DAX = DynamodbDax +DynamodbGSI = DynamodbGlobalSecondaryIndex DB = Database DDB = Dynamodb ElastiCache = Elasticache diff --git a/diagrams/aws/game.py b/diagrams/aws/game.py new file mode 100644 index 000000000..dcd2e0f71 --- /dev/null +++ b/diagrams/aws/game.py @@ -0,0 +1,15 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _AWS + + +class _Game(_AWS): + _type = "game" + _icon_dir = "resources/aws/game" + + +class Gamelift(_Game): + _icon = "gamelift.png" + + +# Aliases diff --git a/diagrams/aws/general.py b/diagrams/aws/general.py new file mode 100644 index 000000000..80284ba6b --- /dev/null +++ b/diagrams/aws/general.py @@ -0,0 +1,57 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _AWS + + +class _General(_AWS): + _type = "general" + _icon_dir = "resources/aws/general" + + +class Disk(_General): + _icon = "disk.png" + + +class General(_General): + _icon = "general.png" + + +class GenericDatabase(_General): + _icon = "generic-database.png" + + +class GenericFirewall(_General): + _icon = "generic-firewall.png" + + +class GenericOfficeBuilding(_General): + _icon = "generic-office-building.png" + + +class GenericSamlToken(_General): + _icon = "generic-saml-token.png" + + +class GenericSDK(_General): + _icon = "generic-sdk.png" + + +class Marketplace(_General): + _icon = "marketplace.png" + + +class TradicionalServer(_General): + _icon = "tradicional-server.png" + + +class User(_General): + _icon = "user.png" + + +class Users(_General): + _icon = "users.png" + + +# Aliases + +OfficeBuilding = GenericOfficeBuilding diff --git a/diagrams/aws/iot.py b/diagrams/aws/iot.py index d413d3edc..4e30beda1 100644 --- a/diagrams/aws/iot.py +++ b/diagrams/aws/iot.py @@ -20,6 +20,14 @@ class Iot1Click(_Iot): _icon = "iot-1-click.png" +class IotAlexaEcho(_Iot): + _icon = "iot-alexa-echo.png" + + +class IotAlexaSkill(_Iot): + _icon = "iot-alexa-skill.png" + + class IotAnalytics(_Iot): _icon = "iot-analytics.png" @@ -28,6 +36,14 @@ class IotButton(_Iot): _icon = "iot-button.png" +class IotCamera(_Iot): + _icon = "iot-camera.png" + + +class IotCertificate(_Iot): + _icon = "iot-certificate.png" + + class IotCore(_Iot): _icon = "iot-core.png" @@ -48,6 +64,26 @@ class IotGreengrass(_Iot): _icon = "iot-greengrass.png" +class IotHardwareBoard(_Iot): + _icon = "iot-hardware-board.png" + + +class IotJobs(_Iot): + _icon = "iot-jobs.png" + + +class IotMqtt(_Iot): + _icon = "iot-mqtt.png" + + +class IotRule(_Iot): + _icon = "iot-rule.png" + + +class IotShadow(_Iot): + _icon = "iot-shadow.png" + + class IotSitewise(_Iot): _icon = "iot-sitewise.png" @@ -56,6 +92,11 @@ class IotThingsGraph(_Iot): _icon = "iot-things-graph.png" +class IotTopic(_Iot): + _icon = "iot-topic.png" + + # Aliases FreeRTOS = Freertos +IotBoard = IotHardwareBoard diff --git a/diagrams/aws/robotics.py b/diagrams/aws/robotics.py new file mode 100644 index 000000000..d2111747b --- /dev/null +++ b/diagrams/aws/robotics.py @@ -0,0 +1,23 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _AWS + + +class _Robotics(_AWS): + _type = "robotics" + _icon_dir = "resources/aws/robotics" + + +class RobomakerSimulator(_Robotics): + _icon = "robomaker-simulator.png" + + +class Robomaker(_Robotics): + _icon = "robomaker.png" + + +class Robotics(_Robotics): + _icon = "robotics.png" + + +# Aliases diff --git a/diagrams/aws/security.py b/diagrams/aws/security.py index d03d7175b..61da75a9e 100644 --- a/diagrams/aws/security.py +++ b/diagrams/aws/security.py @@ -28,6 +28,10 @@ class Cognito(_Security): _icon = "cognito.png" +class Detective(_Security): + _icon = "detective.png" + + class DirectoryService(_Security): _icon = "directory-service.png" @@ -40,6 +44,22 @@ class Guardduty(_Security): _icon = "guardduty.png" +class IdentityAndAccessManagementIamAccessAnalyzer(_Security): + _icon = "identity-and-access-management-iam-access-analyzer.png" + + +class IdentityAndAccessManagementIamAWSSts(_Security): + _icon = "identity-and-access-management-iam-aws-sts.png" + + +class IdentityAndAccessManagementIamPermissions(_Security): + _icon = "identity-and-access-management-iam-permissions.png" + + +class IdentityAndAccessManagementIamRole(_Security): + _icon = "identity-and-access-management-iam-role.png" + + class IdentityAndAccessManagementIam(_Security): _icon = "identity-and-access-management-iam.png" @@ -90,6 +110,10 @@ class WAF(_Security): CloudHSM = Cloudhsm DS = DirectoryService FMS = FirewallManager +IAMAccessAnalyzer = IdentityAndAccessManagementIamAccessAnalyzer +IAMAWSSts = IdentityAndAccessManagementIamAWSSts +IAMPermissions = IdentityAndAccessManagementIamPermissions +IAMRole = IdentityAndAccessManagementIamRole IAM = IdentityAndAccessManagementIam KMS = KeyManagementService RAM = ResourceAccessManager diff --git a/diagrams/azure/general.py b/diagrams/azure/general.py new file mode 100644 index 000000000..8958e9756 --- /dev/null +++ b/diagrams/azure/general.py @@ -0,0 +1,115 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Azure + + +class _General(_Azure): + _type = "general" + _icon_dir = "resources/azure/general" + + +class Allresources(_General): + _icon = "allresources.png" + + +class Azurehome(_General): + _icon = "azurehome.png" + + +class Developertools(_General): + _icon = "developertools.png" + + +class Helpsupport(_General): + _icon = "helpsupport.png" + + +class Information(_General): + _icon = "information.png" + + +class Managementgroups(_General): + _icon = "managementgroups.png" + + +class Marketplace(_General): + _icon = "marketplace.png" + + +class Quickstartcenter(_General): + _icon = "quickstartcenter.png" + + +class Recent(_General): + _icon = "recent.png" + + +class Reservations(_General): + _icon = "reservations.png" + + +class Resource(_General): + _icon = "resource.png" + + +class Resourcegroups(_General): + _icon = "resourcegroups.png" + + +class Servicehealth(_General): + _icon = "servicehealth.png" + + +class Shareddashboard(_General): + _icon = "shareddashboard.png" + + +class Subscriptions(_General): + _icon = "subscriptions.png" + + +class Support(_General): + _icon = "support.png" + + +class Supportrequests(_General): + _icon = "supportrequests.png" + + +class Tag(_General): + _icon = "tag.png" + + +class Tags(_General): + _icon = "tags.png" + + +class Templates(_General): + _icon = "templates.png" + + +class Twousericon(_General): + _icon = "twousericon.png" + + +class Userhealthicon(_General): + _icon = "userhealthicon.png" + + +class Usericon(_General): + _icon = "usericon.png" + + +class Userprivacy(_General): + _icon = "userprivacy.png" + + +class Userresource(_General): + _icon = "userresource.png" + + +class Whatsnew(_General): + _icon = "whatsnew.png" + + +# Aliases diff --git a/diagrams/elastic/__init__.py b/diagrams/elastic/__init__.py new file mode 100644 index 000000000..786fa60e4 --- /dev/null +++ b/diagrams/elastic/__init__.py @@ -0,0 +1,12 @@ +""" +Elastic provides a set of general elastic services. +""" + +from diagrams import Node + + +class _Elastic(Node): + _provider = "elastic" + _icon_dir = "resources/elastic" + + fontcolor = "#ffffff" diff --git a/diagrams/elastic/elasticsearch.py b/diagrams/elastic/elasticsearch.py new file mode 100644 index 000000000..a903a42b6 --- /dev/null +++ b/diagrams/elastic/elasticsearch.py @@ -0,0 +1,49 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Elastic + + +class _Elasticsearch(_Elastic): + _type = "elasticsearch" + _icon_dir = "resources/elastic/elasticsearch" + + +class Alerting(_Elasticsearch): + _icon = "alerting.png" + + +class Elasticsearch(_Elasticsearch): + _icon = "elasticsearch.png" + + +class Kibana(_Elasticsearch): + _icon = "kibana.png" + + +class Logstash(_Elasticsearch): + _icon = "logstash.png" + + +class MachineLearning(_Elasticsearch): + _icon = "machine-learning.png" + + +class Maps(_Elasticsearch): + _icon = "maps.png" + + +class Monitoring(_Elasticsearch): + _icon = "monitoring.png" + + +class SecuritySettings(_Elasticsearch): + _icon = "security-settings.png" + + +class Sql(_Elasticsearch): + _icon = "sql.png" + + +# Aliases + +LogStash = Logstash diff --git a/diagrams/elastic/enterprisesearch.py b/diagrams/elastic/enterprisesearch.py new file mode 100644 index 000000000..d5e194591 --- /dev/null +++ b/diagrams/elastic/enterprisesearch.py @@ -0,0 +1,27 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Elastic + + +class _Enterprisesearch(_Elastic): + _type = "enterprisesearch" + _icon_dir = "resources/elastic/enterprisesearch" + + +class AppSearch(_Enterprisesearch): + _icon = "app-search.png" + + +class EnterpriseSearch(_Enterprisesearch): + _icon = "enterprise-search.png" + + +class SiteSearch(_Enterprisesearch): + _icon = "site-search.png" + + +class WorkplaceSearch(_Enterprisesearch): + _icon = "workplace-search.png" + + +# Aliases diff --git a/diagrams/elastic/observability.py b/diagrams/elastic/observability.py new file mode 100644 index 000000000..3001340d2 --- /dev/null +++ b/diagrams/elastic/observability.py @@ -0,0 +1,31 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Elastic + + +class _Observability(_Elastic): + _type = "observability" + _icon_dir = "resources/elastic/observability" + + +class APM(_Observability): + _icon = "apm.png" + + +class Logs(_Observability): + _icon = "logs.png" + + +class Metrics(_Observability): + _icon = "metrics.png" + + +class Observability(_Observability): + _icon = "observability.png" + + +class Uptime(_Observability): + _icon = "uptime.png" + + +# Aliases diff --git a/diagrams/elastic/orchestration.py b/diagrams/elastic/orchestration.py new file mode 100644 index 000000000..99084cc72 --- /dev/null +++ b/diagrams/elastic/orchestration.py @@ -0,0 +1,19 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Elastic + + +class _Orchestration(_Elastic): + _type = "orchestration" + _icon_dir = "resources/elastic/orchestration" + + +class ECE(_Orchestration): + _icon = "ece.png" + + +class ECK(_Orchestration): + _icon = "eck.png" + + +# Aliases diff --git a/diagrams/elastic/security.py b/diagrams/elastic/security.py new file mode 100644 index 000000000..34afe3e00 --- /dev/null +++ b/diagrams/elastic/security.py @@ -0,0 +1,23 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Elastic + + +class _Security(_Elastic): + _type = "security" + _icon_dir = "resources/elastic/security" + + +class Endpoint(_Security): + _icon = "endpoint.png" + + +class Security(_Security): + _icon = "security.png" + + +class SIEM(_Security): + _icon = "siem.png" + + +# Aliases diff --git a/diagrams/firebase/__init__.py b/diagrams/firebase/__init__.py new file mode 100644 index 000000000..5cd693ec6 --- /dev/null +++ b/diagrams/firebase/__init__.py @@ -0,0 +1,12 @@ +""" +Firebase provides a set of services for Firebase provider. +""" + +from diagrams import Node + + +class _Firebase(Node): + _provider = "firebase" + _icon_dir = "resources/firebase" + + fontcolor = "#ffffff" diff --git a/diagrams/firebase/base.py b/diagrams/firebase/base.py new file mode 100644 index 000000000..a7c9531c5 --- /dev/null +++ b/diagrams/firebase/base.py @@ -0,0 +1,15 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Firebase + + +class _Base(_Firebase): + _type = "base" + _icon_dir = "resources/firebase/base" + + +class Firebase(_Base): + _icon = "firebase.png" + + +# Aliases diff --git a/diagrams/firebase/develop.py b/diagrams/firebase/develop.py new file mode 100644 index 000000000..27426e517 --- /dev/null +++ b/diagrams/firebase/develop.py @@ -0,0 +1,39 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Firebase + + +class _Develop(_Firebase): + _type = "develop" + _icon_dir = "resources/firebase/develop" + + +class Authentication(_Develop): + _icon = "authentication.png" + + +class Firestore(_Develop): + _icon = "firestore.png" + + +class Functions(_Develop): + _icon = "functions.png" + + +class Hosting(_Develop): + _icon = "hosting.png" + + +class MLKit(_Develop): + _icon = "ml-kit.png" + + +class RealtimeDatabase(_Develop): + _icon = "realtime-database.png" + + +class Storage(_Develop): + _icon = "storage.png" + + +# Aliases diff --git a/diagrams/firebase/extentions.py b/diagrams/firebase/extentions.py new file mode 100644 index 000000000..9d5926c23 --- /dev/null +++ b/diagrams/firebase/extentions.py @@ -0,0 +1,15 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Firebase + + +class _Extentions(_Firebase): + _type = "extentions" + _icon_dir = "resources/firebase/extentions" + + +class Extensions(_Extentions): + _icon = "extensions.png" + + +# Aliases diff --git a/diagrams/firebase/grow.py b/diagrams/firebase/grow.py new file mode 100644 index 000000000..b015dd3f4 --- /dev/null +++ b/diagrams/firebase/grow.py @@ -0,0 +1,45 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Firebase + + +class _Grow(_Firebase): + _type = "grow" + _icon_dir = "resources/firebase/grow" + + +class ABTesting(_Grow): + _icon = "ab-testing.png" + + +class AppIndexing(_Grow): + _icon = "app-indexing.png" + + +class DynamicLinks(_Grow): + _icon = "dynamic-links.png" + + +class InAppMessaging(_Grow): + _icon = "in-app-messaging.png" + + +class Invites(_Grow): + _icon = "invites.png" + + +class Messaging(_Grow): + _icon = "messaging.png" + + +class Predictions(_Grow): + _icon = "predictions.png" + + +class RemoteConfig(_Grow): + _icon = "remote-config.png" + + +# Aliases + +FCM = Messaging diff --git a/diagrams/firebase/quality.py b/diagrams/firebase/quality.py new file mode 100644 index 000000000..227a4c354 --- /dev/null +++ b/diagrams/firebase/quality.py @@ -0,0 +1,31 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Firebase + + +class _Quality(_Firebase): + _type = "quality" + _icon_dir = "resources/firebase/quality" + + +class AppDistribution(_Quality): + _icon = "app-distribution.png" + + +class CrashReporting(_Quality): + _icon = "crash-reporting.png" + + +class Crashlytics(_Quality): + _icon = "crashlytics.png" + + +class PerformanceMonitoring(_Quality): + _icon = "performance-monitoring.png" + + +class TestLab(_Quality): + _icon = "test-lab.png" + + +# Aliases diff --git a/diagrams/generic/__init__.py b/diagrams/generic/__init__.py new file mode 100644 index 000000000..70db6868c --- /dev/null +++ b/diagrams/generic/__init__.py @@ -0,0 +1,12 @@ +""" +Generic provides the possibility of load an image to be presented as a node. +""" + +from diagrams import Node + + +class _Generic(Node): + provider = "generic" + _icon_dir = "resources/generic" + + fontcolor = "#ffffff" diff --git a/diagrams/generic/blank.py b/diagrams/generic/blank.py new file mode 100644 index 000000000..d50410b1b --- /dev/null +++ b/diagrams/generic/blank.py @@ -0,0 +1,15 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Generic + + +class _Blank(_Generic): + _type = "blank" + _icon_dir = "resources/generic/blank" + + +class Blank(_Blank): + _icon = "blank.png" + + +# Aliases diff --git a/diagrams/generic/compute.py b/diagrams/generic/compute.py new file mode 100644 index 000000000..436c641e5 --- /dev/null +++ b/diagrams/generic/compute.py @@ -0,0 +1,15 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Generic + + +class _Compute(_Generic): + _type = "compute" + _icon_dir = "resources/generic/compute" + + +class Rack(_Compute): + _icon = "rack.png" + + +# Aliases diff --git a/diagrams/generic/network.py b/diagrams/generic/network.py new file mode 100644 index 000000000..7b9a9ee0b --- /dev/null +++ b/diagrams/generic/network.py @@ -0,0 +1,27 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Generic + + +class _Network(_Generic): + _type = "network" + _icon_dir = "resources/generic/network" + + +class Firewall(_Network): + _icon = "firewall.png" + + +class Router(_Network): + _icon = "router.png" + + +class Switch(_Network): + _icon = "switch.png" + + +class VPN(_Network): + _icon = "vpn.png" + + +# Aliases diff --git a/diagrams/generic/place.py b/diagrams/generic/place.py new file mode 100644 index 000000000..ec3160695 --- /dev/null +++ b/diagrams/generic/place.py @@ -0,0 +1,15 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Generic + + +class _Place(_Generic): + _type = "place" + _icon_dir = "resources/generic/place" + + +class Datacenter(_Place): + _icon = "datacenter.png" + + +# Aliases diff --git a/diagrams/generic/storage.py b/diagrams/generic/storage.py new file mode 100644 index 000000000..9e58cefea --- /dev/null +++ b/diagrams/generic/storage.py @@ -0,0 +1,15 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Generic + + +class _Storage(_Generic): + _type = "storage" + _icon_dir = "resources/generic/storage" + + +class Storage(_Storage): + _icon = "storage.png" + + +# Aliases diff --git a/diagrams/onprem/ci.py b/diagrams/onprem/ci.py index f6302b05e..896e5de66 100644 --- a/diagrams/onprem/ci.py +++ b/diagrams/onprem/ci.py @@ -12,6 +12,10 @@ class Circleci(_Ci): _icon = "circleci.png" +class Gitlabci(_Ci): + _icon = "gitlabci.png" + + class Jenkins(_Ci): _icon = "jenkins.png" @@ -24,8 +28,14 @@ class Travisci(_Ci): _icon = "travisci.png" +class Zuulci(_Ci): + _icon = "zuulci.png" + + # Aliases CircleCI = Circleci +GitlabCI = Gitlabci TravisCI = Travisci TC = Teamcity +ZuulCI = Zuulci diff --git a/diagrams/onprem/database.py b/diagrams/onprem/database.py index 0d5d7ee83..9551d9387 100644 --- a/diagrams/onprem/database.py +++ b/diagrams/onprem/database.py @@ -20,6 +20,10 @@ class Cockroachdb(_Database): _icon = "cockroachdb.png" +class Couchbase(_Database): + _icon = "couchbase.png" + + class Couchdb(_Database): _icon = "couchdb.png" diff --git a/diagrams/onprem/gitops.py b/diagrams/onprem/gitops.py index 670bd2c50..c4702c624 100644 --- a/diagrams/onprem/gitops.py +++ b/diagrams/onprem/gitops.py @@ -12,6 +12,14 @@ class Argocd(_Gitops): _icon = "argocd.png" +class Flagger(_Gitops): + _icon = "flagger.png" + + +class Flux(_Gitops): + _icon = "flux.png" + + # Aliases ArgoCD = Argocd diff --git a/diagrams/onprem/monitoring.py b/diagrams/onprem/monitoring.py index 3013d05d0..cbabfce76 100644 --- a/diagrams/onprem/monitoring.py +++ b/diagrams/onprem/monitoring.py @@ -24,6 +24,10 @@ class Prometheus(_Monitoring): _icon = "prometheus.png" +class Sentry(_Monitoring): + _icon = "sentry.png" + + class Splunk(_Monitoring): _icon = "splunk.png" diff --git a/diagrams/programming/language.py b/diagrams/programming/language.py index 60de22150..36c3d4c0e 100644 --- a/diagrams/programming/language.py +++ b/diagrams/programming/language.py @@ -68,6 +68,10 @@ class Ruby(_Language): _icon = "ruby.png" +class Rust(_Language): + _icon = "rust.png" + + class Swift(_Language): _icon = "swift.png" diff --git a/diagrams/saas/__init__.py b/diagrams/saas/__init__.py new file mode 100644 index 000000000..ecae1d803 --- /dev/null +++ b/diagrams/saas/__init__.py @@ -0,0 +1,12 @@ +""" +Saas provides a set of general saas services. +""" + +from diagrams import Node + + +class _Saas(Node): + _provider = "saas" + _icon_dir = "resources/saas" + + fontcolor = "#ffffff" diff --git a/diagrams/saas/chat.py b/diagrams/saas/chat.py new file mode 100644 index 000000000..ebdf0532f --- /dev/null +++ b/diagrams/saas/chat.py @@ -0,0 +1,19 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Saas + + +class _Chat(_Saas): + _type = "chat" + _icon_dir = "resources/saas/chat" + + +class Slack(_Chat): + _icon = "slack.png" + + +class Telegram(_Chat): + _icon = "telegram.png" + + +# Aliases diff --git a/diagrams/saas/social.py b/diagrams/saas/social.py new file mode 100644 index 000000000..6ad326db5 --- /dev/null +++ b/diagrams/saas/social.py @@ -0,0 +1,19 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Saas + + +class _Social(_Saas): + _type = "social" + _icon_dir = "resources/saas/social" + + +class Facebook(_Social): + _icon = "facebook.png" + + +class Twitter(_Social): + _icon = "twitter.png" + + +# Aliases diff --git a/docs/nodes/aws.md b/docs/nodes/aws.md index 65f2e3770..5ab1e4857 100644 --- a/docs/nodes/aws.md +++ b/docs/nodes/aws.md @@ -5,7 +5,89 @@ title: AWS Node classes list of aws provider. -## aws.ml +## aws.analytics + +- **diagrams.aws.analytics.Analytics** +- **diagrams.aws.analytics.Athena** +- **diagrams.aws.analytics.CloudsearchSearchDocuments** +- **diagrams.aws.analytics.Cloudsearch** +- **diagrams.aws.analytics.DataPipeline** +- **diagrams.aws.analytics.ElasticsearchService**, **ES** (alias) +- **diagrams.aws.analytics.EMRCluster** +- **diagrams.aws.analytics.EMRHdfsCluster** +- **diagrams.aws.analytics.EMR** +- **diagrams.aws.analytics.GlueCrawlers** +- **diagrams.aws.analytics.GlueDataCatalog** +- **diagrams.aws.analytics.Glue** +- **diagrams.aws.analytics.KinesisDataAnalytics** +- **diagrams.aws.analytics.KinesisDataFirehose** +- **diagrams.aws.analytics.KinesisDataStreams** +- **diagrams.aws.analytics.KinesisVideoStreams** +- **diagrams.aws.analytics.Kinesis** +- **diagrams.aws.analytics.LakeFormation** +- **diagrams.aws.analytics.ManagedStreamingForKafka** +- **diagrams.aws.analytics.Quicksight** +- **diagrams.aws.analytics.RedshiftDenseComputeNode** +- **diagrams.aws.analytics.RedshiftDenseStorageNode** +- **diagrams.aws.analytics.Redshift** + +## aws.compute + +- **diagrams.aws.compute.ApplicationAutoScaling**, **AutoScaling** (alias) +- **diagrams.aws.compute.Batch** +- **diagrams.aws.compute.Compute** +- **diagrams.aws.compute.EC2ContainerRegistry**, **ECR** (alias) +- **diagrams.aws.compute.EC2** +- **diagrams.aws.compute.ElasticBeanstalk**, **EB** (alias) +- **diagrams.aws.compute.ElasticContainerService**, **ECS** (alias) +- **diagrams.aws.compute.ElasticKubernetesService**, **EKS** (alias) +- **diagrams.aws.compute.Fargate** +- **diagrams.aws.compute.Lambda** +- **diagrams.aws.compute.Lightsail** +- **diagrams.aws.compute.Outposts** +- **diagrams.aws.compute.ServerlessApplicationRepository**, **SAR** (alias) +- **diagrams.aws.compute.ThinkboxDeadline** +- **diagrams.aws.compute.ThinkboxDraft** +- **diagrams.aws.compute.ThinkboxFrost** +- **diagrams.aws.compute.ThinkboxKrakatoa** +- **diagrams.aws.compute.ThinkboxSequoia** +- **diagrams.aws.compute.ThinkboxStoke** +- **diagrams.aws.compute.ThinkboxXmesh** +- **diagrams.aws.compute.VmwareCloudOnAWS** + +## aws.database + +- **diagrams.aws.database.Aurora** +- **diagrams.aws.database.DatabaseMigrationService**, **DMS** (alias) +- **diagrams.aws.database.Database**, **DB** (alias) +- **diagrams.aws.database.DocumentdbMongodbCompatibility**, **DocumentDB** (alias) +- **diagrams.aws.database.DynamodbDax**, **DAX** (alias) +- **diagrams.aws.database.DynamodbGlobalSecondaryIndex**, **DynamodbGSI** (alias) +- **diagrams.aws.database.DynamodbTable** +- **diagrams.aws.database.Dynamodb**, **DDB** (alias) +- **diagrams.aws.database.Elasticache**, **ElastiCache** (alias) +- **diagrams.aws.database.Neptune** +- **diagrams.aws.database.QuantumLedgerDatabaseQldb**, **QLDB** (alias) +- **diagrams.aws.database.RDSOnVmware** +- **diagrams.aws.database.RDS** +- **diagrams.aws.database.Redshift** +- **diagrams.aws.database.Timestream** + +## aws.devtools + +- **diagrams.aws.devtools.CloudDevelopmentKit** +- **diagrams.aws.devtools.Cloud9** +- **diagrams.aws.devtools.Codebuild** +- **diagrams.aws.devtools.Codecommit** +- **diagrams.aws.devtools.Codedeploy** +- **diagrams.aws.devtools.Codepipeline** +- **diagrams.aws.devtools.Codestar** +- **diagrams.aws.devtools.CommandLineInterface**, **CLI** (alias) +- **diagrams.aws.devtools.DeveloperTools**, **DevTools** (alias) +- **diagrams.aws.devtools.ToolsAndSdks** +- **diagrams.aws.devtools.XRay** + +## aws.engagement - **diagrams.aws.ml.ApacheMxnetOnAWS** - **diagrams.aws.ml.Comprehend** @@ -27,6 +109,24 @@ Node classes list of aws provider. - **diagrams.aws.ml.Transcribe** - **diagrams.aws.ml.Translate** +## aws.game + +- **diagrams.aws.game.Gamelift** + +## aws.general + +- **diagrams.aws.general.Disk** +- **diagrams.aws.general.General** +- **diagrams.aws.general.GenericDatabase** +- **diagrams.aws.general.GenericFirewall** +- **diagrams.aws.general.GenericOfficeBuilding**, **OfficeBuilding** (alias) +- **diagrams.aws.general.GenericSamlToken** +- **diagrams.aws.general.GenericSDK** +- **diagrams.aws.general.Marketplace** +- **diagrams.aws.general.TradicionalServer** +- **diagrams.aws.general.User** +- **diagrams.aws.general.Users** + ## aws.integration - **diagrams.aws.integration.ApplicationIntegration** @@ -40,39 +140,28 @@ Node classes list of aws provider. ## aws.media -- **diagrams.aws.media.ElasticTranscoder** -- **diagrams.aws.media.ElementalConductor** -- **diagrams.aws.media.ElementalDelta** -- **diagrams.aws.media.ElementalLive** -- **diagrams.aws.media.ElementalMediaconnect** -- **diagrams.aws.media.ElementalMediaconvert** -- **diagrams.aws.media.ElementalMedialive** -- **diagrams.aws.media.ElementalMediapackage** -- **diagrams.aws.media.ElementalMediastore** -- **diagrams.aws.media.ElementalMediatailor** -- **diagrams.aws.media.ElementalServer** - -## aws.security - -- **diagrams.aws.security.Artifact** -- **diagrams.aws.security.CertificateManager**, **ACM** (alias) -- **diagrams.aws.security.CloudDirectory** -- **diagrams.aws.security.Cloudhsm**, **CloudHSM** (alias) -- **diagrams.aws.security.Cognito** -- **diagrams.aws.security.DirectoryService**, **DS** (alias) -- **diagrams.aws.security.FirewallManager**, **FMS** (alias) -- **diagrams.aws.security.Guardduty** -- **diagrams.aws.security.IdentityAndAccessManagementIam**, **IAM** (alias) -- **diagrams.aws.security.Inspector** -- **diagrams.aws.security.KeyManagementService**, **KMS** (alias) -- **diagrams.aws.security.Macie** -- **diagrams.aws.security.ResourceAccessManager**, **RAM** (alias) -- **diagrams.aws.security.SecretsManager** -- **diagrams.aws.security.SecurityHub** -- **diagrams.aws.security.SecurityIdentityAndCompliance** -- **diagrams.aws.security.Shield** -- **diagrams.aws.security.SingleSignOn** -- **diagrams.aws.security.WAF** +- **diagrams.aws.iot.Freertos**, **FreeRTOS** (alias) +- **diagrams.aws.iot.InternetOfThings** +- **diagrams.aws.iot.Iot1Click** +- **diagrams.aws.iot.IotAlexaEcho** +- **diagrams.aws.iot.IotAlexaSkill** +- **diagrams.aws.iot.IotAnalytics** +- **diagrams.aws.iot.IotButton** +- **diagrams.aws.iot.IotCamera** +- **diagrams.aws.iot.IotCertificate** +- **diagrams.aws.iot.IotCore** +- **diagrams.aws.iot.IotDeviceDefender** +- **diagrams.aws.iot.IotDeviceManagement** +- **diagrams.aws.iot.IotEvents** +- **diagrams.aws.iot.IotGreengrass** +- **diagrams.aws.iot.IotHardwareBoard**, **IotBoard** (alias) +- **diagrams.aws.iot.IotJobs** +- **diagrams.aws.iot.IotMqtt** +- **diagrams.aws.iot.IotRule** +- **diagrams.aws.iot.IotShadow** +- **diagrams.aws.iot.IotSitewise** +- **diagrams.aws.iot.IotThingsGraph** +- **diagrams.aws.iot.IotTopic** ## aws.management @@ -150,6 +239,39 @@ Node classes list of aws provider. - **diagrams.aws.network.VPCRouter** - **diagrams.aws.network.VPC** +## aws.robotics + +- **diagrams.aws.robotics.RobomakerSimulator** +- **diagrams.aws.robotics.Robomaker** +- **diagrams.aws.robotics.Robotics** + +## aws.security + +- **diagrams.aws.security.Artifact** +- **diagrams.aws.security.CertificateManager**, **ACM** (alias) +- **diagrams.aws.security.CloudDirectory** +- **diagrams.aws.security.Cloudhsm**, **CloudHSM** (alias) +- **diagrams.aws.security.Cognito** +- **diagrams.aws.security.Detective** +- **diagrams.aws.security.DirectoryService**, **DS** (alias) +- **diagrams.aws.security.FirewallManager**, **FMS** (alias) +- **diagrams.aws.security.Guardduty** +- **diagrams.aws.security.IdentityAndAccessManagementIamAccessAnalyzer**, **IAMAccessAnalyzer** (alias) +- **diagrams.aws.security.IdentityAndAccessManagementIamAWSSts**, **IAMAWSSts** (alias) +- **diagrams.aws.security.IdentityAndAccessManagementIamPermissions**, **IAMPermissions** (alias) +- **diagrams.aws.security.IdentityAndAccessManagementIamRole**, **IAMRole** (alias) +- **diagrams.aws.security.IdentityAndAccessManagementIam**, **IAM** (alias) +- **diagrams.aws.security.Inspector** +- **diagrams.aws.security.KeyManagementService**, **KMS** (alias) +- **diagrams.aws.security.Macie** +- **diagrams.aws.security.ResourceAccessManager**, **RAM** (alias) +- **diagrams.aws.security.SecretsManager** +- **diagrams.aws.security.SecurityHub** +- **diagrams.aws.security.SecurityIdentityAndCompliance** +- **diagrams.aws.security.Shield** +- **diagrams.aws.security.SingleSignOn** +- **diagrams.aws.security.WAF** + ## aws.storage - **diagrams.aws.storage.Backup** diff --git a/docs/nodes/azure.md b/docs/nodes/azure.md index aee167a2c..41216a52d 100644 --- a/docs/nodes/azure.md +++ b/docs/nodes/azure.md @@ -42,12 +42,61 @@ Node classes list of azure provider. - **diagrams.azure.security.SecurityCenter** - **diagrams.azure.security.Sentinel** -## azure.mobile +## azure.general + +- **diagrams.azure.general.Allresources** +- **diagrams.azure.general.Azurehome** +- **diagrams.azure.general.Developertools** +- **diagrams.azure.general.Helpsupport** +- **diagrams.azure.general.Information** +- **diagrams.azure.general.Managementgroups** +- **diagrams.azure.general.Marketplace** +- **diagrams.azure.general.Quickstartcenter** +- **diagrams.azure.general.Recent** +- **diagrams.azure.general.Reservations** +- **diagrams.azure.general.Resource** +- **diagrams.azure.general.Resourcegroups** +- **diagrams.azure.general.Servicehealth** +- **diagrams.azure.general.Shareddashboard** +- **diagrams.azure.general.Subscriptions** +- **diagrams.azure.general.Support** +- **diagrams.azure.general.Supportrequests** +- **diagrams.azure.general.Tag** +- **diagrams.azure.general.Tags** +- **diagrams.azure.general.Templates** +- **diagrams.azure.general.Twousericon** +- **diagrams.azure.general.Userhealthicon** +- **diagrams.azure.general.Usericon** +- **diagrams.azure.general.Userprivacy** +- **diagrams.azure.general.Userresource** +- **diagrams.azure.general.Whatsnew** + +## azure.identity - **diagrams.azure.mobile.AppServiceMobile** - **diagrams.azure.mobile.MobileEngagement** - **diagrams.azure.mobile.NotificationHubs** +## azure.integration + +- **diagrams.azure.integration.APIForFhir** +- **diagrams.azure.integration.APIManagement** +- **diagrams.azure.integration.AppConfiguration** +- **diagrams.azure.integration.DataCatalog** +- **diagrams.azure.integration.EventGridDomains** +- **diagrams.azure.integration.EventGridSubscriptions** +- **diagrams.azure.integration.EventGridTopics** +- **diagrams.azure.integration.IntegrationAccounts** +- **diagrams.azure.integration.IntegrationServiceEnvironments** +- **diagrams.azure.integration.LogicAppsCustomConnector** +- **diagrams.azure.integration.LogicApps** +- **diagrams.azure.integration.SendgridAccounts** +- **diagrams.azure.integration.ServiceBusRelays** +- **diagrams.azure.integration.ServiceBus** +- **diagrams.azure.integration.ServiceCatalogManagedApplicationDefinitions** +- **diagrams.azure.integration.SoftwareAsAService** +- **diagrams.azure.integration.StorsimpleDeviceManagers** + ## azure.iot - **diagrams.azure.iot.DeviceProvisioningServices** @@ -200,14 +249,3 @@ Node classes list of azure provider. - **diagrams.azure.web.NotificationHubNamespaces** - **diagrams.azure.web.Search** - **diagrams.azure.web.Signalr** - -## azure.devops - -- **diagrams.azure.devops.ApplicationInsights** -- **diagrams.azure.devops.Artifacts** -- **diagrams.azure.devops.Boards** -- **diagrams.azure.devops.Devops** -- **diagrams.azure.devops.DevtestLabs** -- **diagrams.azure.devops.Pipelines** -- **diagrams.azure.devops.Repos** -- **diagrams.azure.devops.TestPlans** diff --git a/docs/nodes/elastic.md b/docs/nodes/elastic.md new file mode 100644 index 000000000..ce5d3c7a8 --- /dev/null +++ b/docs/nodes/elastic.md @@ -0,0 +1,44 @@ +--- +id: elastic +title: Elastic +--- + +Node classes list of elastic provider. + +## elastic.elasticsearch + +- **diagrams.elastic.elasticsearch.Alerting** +- **diagrams.elastic.elasticsearch.Elasticsearch** +- **diagrams.elastic.elasticsearch.Kibana** +- **diagrams.elastic.elasticsearch.Logstash**, **LogStash** (alias) +- **diagrams.elastic.elasticsearch.MachineLearning** +- **diagrams.elastic.elasticsearch.Maps** +- **diagrams.elastic.elasticsearch.Monitoring** +- **diagrams.elastic.elasticsearch.SecuritySettings** +- **diagrams.elastic.elasticsearch.Sql** + +## elastic.enterprisesearch + +- **diagrams.elastic.enterprisesearch.AppSearch** +- **diagrams.elastic.enterprisesearch.EnterpriseSearch** +- **diagrams.elastic.enterprisesearch.SiteSearch** +- **diagrams.elastic.enterprisesearch.WorkplaceSearch** + +## elastic.observability + +- **diagrams.elastic.observability.APM** +- **diagrams.elastic.observability.Logs** +- **diagrams.elastic.observability.Metrics** +- **diagrams.elastic.observability.Observability** +- **diagrams.elastic.observability.Uptime** + +## elastic.orchestration + +- **diagrams.elastic.orchestration.ECE** +- **diagrams.elastic.orchestration.ECK** + +## elastic.security + +- **diagrams.elastic.security.Endpoint** +- **diagrams.elastic.security.Security** +- **diagrams.elastic.security.SIEM** diff --git a/docs/nodes/firebase.md b/docs/nodes/firebase.md new file mode 100644 index 000000000..f49a5c9c3 --- /dev/null +++ b/docs/nodes/firebase.md @@ -0,0 +1,43 @@ +--- +id: firebase +title: Firebase +--- + +Node classes list of firebase provider. + +## firebase.base + +- **diagrams.firebase.base.Firebase** + +## firebase.develop + +- **diagrams.firebase.develop.Authentication** +- **diagrams.firebase.develop.Firestore** +- **diagrams.firebase.develop.Functions** +- **diagrams.firebase.develop.Hosting** +- **diagrams.firebase.develop.MLKit** +- **diagrams.firebase.develop.RealtimeDatabase** +- **diagrams.firebase.develop.Storage** + +## firebase.extentions + +- **diagrams.firebase.extentions.Extensions** + +## firebase.grow + +- **diagrams.firebase.grow.ABTesting** +- **diagrams.firebase.grow.AppIndexing** +- **diagrams.firebase.grow.DynamicLinks** +- **diagrams.firebase.grow.InAppMessaging** +- **diagrams.firebase.grow.Invites** +- **diagrams.firebase.grow.Messaging**, **FCM** (alias) +- **diagrams.firebase.grow.Predictions** +- **diagrams.firebase.grow.RemoteConfig** + +## firebase.quality + +- **diagrams.firebase.quality.AppDistribution** +- **diagrams.firebase.quality.CrashReporting** +- **diagrams.firebase.quality.Crashlytics** +- **diagrams.firebase.quality.PerformanceMonitoring** +- **diagrams.firebase.quality.TestLab** diff --git a/docs/nodes/generic.md b/docs/nodes/generic.md new file mode 100644 index 000000000..af11a0db3 --- /dev/null +++ b/docs/nodes/generic.md @@ -0,0 +1,29 @@ +--- +id: generic +title: Generic +--- + +Node classes list of generic provider. + +## generic.blank + +- **diagrams.generic.blank.Blank** + +## generic.compute + +- **diagrams.generic.compute.Rack** + +## generic.network + +- **diagrams.generic.network.Firewall** +- **diagrams.generic.network.Router** +- **diagrams.generic.network.Switch** +- **diagrams.generic.network.VPN** + +## generic.place + +- **diagrams.generic.place.Datacenter** + +## generic.storage + +- **diagrams.generic.storage.Storage** diff --git a/docs/nodes/onprem.md b/docs/nodes/onprem.md index f59df625a..0c9795799 100644 --- a/docs/nodes/onprem.md +++ b/docs/nodes/onprem.md @@ -13,9 +13,11 @@ Node classes list of onprem provider. ## onprem.ci - **diagrams.onprem.ci.Circleci**, **CircleCI** (alias) +- **diagrams.onprem.ci.Gitlabci**, **GitlabCI** (alias) - **diagrams.onprem.ci.Jenkins** - **diagrams.onprem.ci.Teamcity**, **TC** (alias) - **diagrams.onprem.ci.Travisci**, **TravisCI** (alias) +- **diagrams.onprem.ci.Zuulci**, **ZuulCI** (alias) ## onprem.cd @@ -91,6 +93,7 @@ Node classes list of onprem provider. - **diagrams.onprem.database.Cassandra** - **diagrams.onprem.database.Clickhouse**, **ClickHouse** (alias) - **diagrams.onprem.database.Cockroachdb**, **CockroachDB** (alias) +- **diagrams.onprem.database.Couchbase** - **diagrams.onprem.database.Couchdb**, **CouchDB** (alias) - **diagrams.onprem.database.Dgraph** - **diagrams.onprem.database.Hbase**, **HBase** (alias) @@ -131,6 +134,8 @@ Node classes list of onprem provider. ## onprem.gitops - **diagrams.onprem.gitops.Argocd**, **ArgoCD** (alias) +- **diagrams.onprem.gitops.Flagger** +- **diagrams.onprem.gitops.Flux** ## onprem.queue @@ -153,5 +158,6 @@ Node classes list of onprem provider. - **diagrams.onprem.monitoring.Grafana** - **diagrams.onprem.monitoring.Kibana** - **diagrams.onprem.monitoring.Prometheus** +- **diagrams.onprem.monitoring.Sentry** - **diagrams.onprem.monitoring.Splunk** - **diagrams.onprem.monitoring.Thanos** diff --git a/docs/nodes/programming.md b/docs/nodes/programming.md index 715bd46cd..9753161dc 100644 --- a/docs/nodes/programming.md +++ b/docs/nodes/programming.md @@ -22,6 +22,7 @@ Node classes list of programming provider. - **diagrams.programming.language.Python** - **diagrams.programming.language.R** - **diagrams.programming.language.Ruby** +- **diagrams.programming.language.Rust** - **diagrams.programming.language.Swift** - **diagrams.programming.language.Typescript**, **TypeScript** (alias) diff --git a/docs/nodes/saas.md b/docs/nodes/saas.md new file mode 100644 index 000000000..4e7ae8828 --- /dev/null +++ b/docs/nodes/saas.md @@ -0,0 +1,16 @@ +--- +id: saas +title: Saas +--- + +Node classes list of saas provider. + +## saas.chat + +- **diagrams.saas.chat.Slack** +- **diagrams.saas.chat.Telegram** + +## saas.social + +- **diagrams.saas.social.Facebook** +- **diagrams.saas.social.Twitter** diff --git a/pyproject.toml b/pyproject.toml index 3ac7e7d2d..8dae0e653 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "diagrams" -version = "0.11.0" +version = "0.13.1" description = "Diagram as Code" license = "MIT" authors = ["mingrammer "] diff --git a/resources/aws/database/dynamodb-dax.png b/resources/aws/database/dynamodb-dax.png new file mode 100755 index 000000000..5f923c6f4 Binary files /dev/null and b/resources/aws/database/dynamodb-dax.png differ diff --git a/resources/aws/database/dynamodb-global-secondary-index.png b/resources/aws/database/dynamodb-global-secondary-index.png new file mode 100644 index 000000000..ca41aebd9 Binary files /dev/null and b/resources/aws/database/dynamodb-global-secondary-index.png differ diff --git a/resources/aws/database/dynamodb-table.png b/resources/aws/database/dynamodb-table.png new file mode 100644 index 000000000..2dc08e682 Binary files /dev/null and b/resources/aws/database/dynamodb-table.png differ diff --git a/resources/aws/game/gamelift.png b/resources/aws/game/gamelift.png new file mode 100644 index 000000000..2c161ae62 Binary files /dev/null and b/resources/aws/game/gamelift.png differ diff --git a/resources/aws/general/disk.png b/resources/aws/general/disk.png new file mode 100644 index 000000000..533ee568c Binary files /dev/null and b/resources/aws/general/disk.png differ diff --git a/resources/aws/general/general.png b/resources/aws/general/general.png new file mode 100644 index 000000000..779941e75 Binary files /dev/null and b/resources/aws/general/general.png differ diff --git a/resources/aws/general/generic-database.png b/resources/aws/general/generic-database.png new file mode 100644 index 000000000..b1e7bf1ec Binary files /dev/null and b/resources/aws/general/generic-database.png differ diff --git a/resources/aws/general/generic-firewall.png b/resources/aws/general/generic-firewall.png new file mode 100644 index 000000000..4f91b1a61 Binary files /dev/null and b/resources/aws/general/generic-firewall.png differ diff --git a/resources/aws/general/generic-office-building.png b/resources/aws/general/generic-office-building.png new file mode 100644 index 000000000..bb96caa50 Binary files /dev/null and b/resources/aws/general/generic-office-building.png differ diff --git a/resources/aws/general/generic-saml-token.png b/resources/aws/general/generic-saml-token.png new file mode 100644 index 000000000..0d5fa4cef Binary files /dev/null and b/resources/aws/general/generic-saml-token.png differ diff --git a/resources/aws/general/generic-sdk.png b/resources/aws/general/generic-sdk.png new file mode 100644 index 000000000..0ce11f879 Binary files /dev/null and b/resources/aws/general/generic-sdk.png differ diff --git a/resources/aws/general/marketplace.png b/resources/aws/general/marketplace.png new file mode 100644 index 000000000..c1c863b15 Binary files /dev/null and b/resources/aws/general/marketplace.png differ diff --git a/resources/aws/general/tradicional-server.png b/resources/aws/general/tradicional-server.png new file mode 100644 index 000000000..2373aced5 Binary files /dev/null and b/resources/aws/general/tradicional-server.png differ diff --git a/resources/aws/general/user.png b/resources/aws/general/user.png new file mode 100644 index 000000000..cd17f3370 Binary files /dev/null and b/resources/aws/general/user.png differ diff --git a/resources/aws/general/users.png b/resources/aws/general/users.png new file mode 100644 index 000000000..d699247ec Binary files /dev/null and b/resources/aws/general/users.png differ diff --git a/resources/aws/iot/iot-alexa-echo.png b/resources/aws/iot/iot-alexa-echo.png new file mode 100644 index 000000000..3c1b99873 Binary files /dev/null and b/resources/aws/iot/iot-alexa-echo.png differ diff --git a/resources/aws/iot/iot-alexa-skill.png b/resources/aws/iot/iot-alexa-skill.png new file mode 100644 index 000000000..95c13f0f1 Binary files /dev/null and b/resources/aws/iot/iot-alexa-skill.png differ diff --git a/resources/aws/iot/iot-camera.png b/resources/aws/iot/iot-camera.png new file mode 100644 index 000000000..ecdea675c Binary files /dev/null and b/resources/aws/iot/iot-camera.png differ diff --git a/resources/aws/iot/iot-certificate.png b/resources/aws/iot/iot-certificate.png new file mode 100644 index 000000000..be4507416 Binary files /dev/null and b/resources/aws/iot/iot-certificate.png differ diff --git a/resources/aws/iot/iot-hardware-board.png b/resources/aws/iot/iot-hardware-board.png new file mode 100644 index 000000000..d7224b2f7 Binary files /dev/null and b/resources/aws/iot/iot-hardware-board.png differ diff --git a/resources/aws/iot/iot-jobs.png b/resources/aws/iot/iot-jobs.png new file mode 100644 index 000000000..6690df511 Binary files /dev/null and b/resources/aws/iot/iot-jobs.png differ diff --git a/resources/aws/iot/iot-mqtt.png b/resources/aws/iot/iot-mqtt.png new file mode 100644 index 000000000..308866c5e Binary files /dev/null and b/resources/aws/iot/iot-mqtt.png differ diff --git a/resources/aws/iot/iot-rule.png b/resources/aws/iot/iot-rule.png new file mode 100644 index 000000000..06065cbec Binary files /dev/null and b/resources/aws/iot/iot-rule.png differ diff --git a/resources/aws/iot/iot-shadow.png b/resources/aws/iot/iot-shadow.png new file mode 100644 index 000000000..9fc50eb7b Binary files /dev/null and b/resources/aws/iot/iot-shadow.png differ diff --git a/resources/aws/iot/iot-topic.png b/resources/aws/iot/iot-topic.png new file mode 100644 index 000000000..ef5646b84 Binary files /dev/null and b/resources/aws/iot/iot-topic.png differ diff --git a/resources/aws/robotics/robomaker-simulator.png b/resources/aws/robotics/robomaker-simulator.png new file mode 100644 index 000000000..3c95e14ee Binary files /dev/null and b/resources/aws/robotics/robomaker-simulator.png differ diff --git a/resources/aws/robotics/robomaker.png b/resources/aws/robotics/robomaker.png new file mode 100644 index 000000000..7cf8ab707 Binary files /dev/null and b/resources/aws/robotics/robomaker.png differ diff --git a/resources/aws/robotics/robotics.png b/resources/aws/robotics/robotics.png new file mode 100644 index 000000000..7b878bb41 Binary files /dev/null and b/resources/aws/robotics/robotics.png differ diff --git a/resources/aws/security/detective.png b/resources/aws/security/detective.png new file mode 100755 index 000000000..9b138ec5e Binary files /dev/null and b/resources/aws/security/detective.png differ diff --git a/resources/aws/security/identity-and-access-management-iam-access-analyzer.png b/resources/aws/security/identity-and-access-management-iam-access-analyzer.png new file mode 100644 index 000000000..e04ad7c49 Binary files /dev/null and b/resources/aws/security/identity-and-access-management-iam-access-analyzer.png differ diff --git a/resources/aws/security/identity-and-access-management-iam-aws-sts.png b/resources/aws/security/identity-and-access-management-iam-aws-sts.png new file mode 100644 index 000000000..d9e35a3ce Binary files /dev/null and b/resources/aws/security/identity-and-access-management-iam-aws-sts.png differ diff --git a/resources/aws/security/identity-and-access-management-iam-permissions.png b/resources/aws/security/identity-and-access-management-iam-permissions.png new file mode 100644 index 000000000..2f26e2772 Binary files /dev/null and b/resources/aws/security/identity-and-access-management-iam-permissions.png differ diff --git a/resources/aws/security/identity-and-access-management-iam-role.png b/resources/aws/security/identity-and-access-management-iam-role.png new file mode 100644 index 000000000..978627060 Binary files /dev/null and b/resources/aws/security/identity-and-access-management-iam-role.png differ diff --git a/resources/azure/general/allresources.png b/resources/azure/general/allresources.png new file mode 100644 index 000000000..f2d945531 Binary files /dev/null and b/resources/azure/general/allresources.png differ diff --git a/resources/azure/general/azurehome.png b/resources/azure/general/azurehome.png new file mode 100644 index 000000000..e86046d6d Binary files /dev/null and b/resources/azure/general/azurehome.png differ diff --git a/resources/azure/general/developertools.png b/resources/azure/general/developertools.png new file mode 100644 index 000000000..882de89ea Binary files /dev/null and b/resources/azure/general/developertools.png differ diff --git a/resources/azure/general/helpsupport.png b/resources/azure/general/helpsupport.png new file mode 100644 index 000000000..d975d146f Binary files /dev/null and b/resources/azure/general/helpsupport.png differ diff --git a/resources/azure/general/information.png b/resources/azure/general/information.png new file mode 100644 index 000000000..3d0e8acad Binary files /dev/null and b/resources/azure/general/information.png differ diff --git a/resources/azure/general/managementgroups.png b/resources/azure/general/managementgroups.png new file mode 100644 index 000000000..1322348d7 Binary files /dev/null and b/resources/azure/general/managementgroups.png differ diff --git a/resources/azure/general/marketplace.png b/resources/azure/general/marketplace.png new file mode 100644 index 000000000..1217b9d4e Binary files /dev/null and b/resources/azure/general/marketplace.png differ diff --git a/resources/azure/general/quickstartcenter.png b/resources/azure/general/quickstartcenter.png new file mode 100644 index 000000000..c3aaa53cf Binary files /dev/null and b/resources/azure/general/quickstartcenter.png differ diff --git a/resources/azure/general/recent.png b/resources/azure/general/recent.png new file mode 100644 index 000000000..c4389d188 Binary files /dev/null and b/resources/azure/general/recent.png differ diff --git a/resources/azure/general/reservations.png b/resources/azure/general/reservations.png new file mode 100644 index 000000000..2f4ba07e6 Binary files /dev/null and b/resources/azure/general/reservations.png differ diff --git a/resources/azure/general/resource.png b/resources/azure/general/resource.png new file mode 100644 index 000000000..8dfdc4328 Binary files /dev/null and b/resources/azure/general/resource.png differ diff --git a/resources/azure/general/resourcegroups.png b/resources/azure/general/resourcegroups.png new file mode 100644 index 000000000..eff189d95 Binary files /dev/null and b/resources/azure/general/resourcegroups.png differ diff --git a/resources/azure/general/servicehealth.png b/resources/azure/general/servicehealth.png new file mode 100644 index 000000000..308f70620 Binary files /dev/null and b/resources/azure/general/servicehealth.png differ diff --git a/resources/azure/general/shareddashboard.png b/resources/azure/general/shareddashboard.png new file mode 100644 index 000000000..97caf7211 Binary files /dev/null and b/resources/azure/general/shareddashboard.png differ diff --git a/resources/azure/general/subscriptions.png b/resources/azure/general/subscriptions.png new file mode 100644 index 000000000..72eed905f Binary files /dev/null and b/resources/azure/general/subscriptions.png differ diff --git a/resources/azure/general/support.png b/resources/azure/general/support.png new file mode 100644 index 000000000..6590fc9ae Binary files /dev/null and b/resources/azure/general/support.png differ diff --git a/resources/azure/general/supportrequests.png b/resources/azure/general/supportrequests.png new file mode 100644 index 000000000..582ee94e1 Binary files /dev/null and b/resources/azure/general/supportrequests.png differ diff --git a/resources/azure/general/tag.png b/resources/azure/general/tag.png new file mode 100644 index 000000000..92b7d10db Binary files /dev/null and b/resources/azure/general/tag.png differ diff --git a/resources/azure/general/tags.png b/resources/azure/general/tags.png new file mode 100644 index 000000000..58f2b4d52 Binary files /dev/null and b/resources/azure/general/tags.png differ diff --git a/resources/azure/general/templates.png b/resources/azure/general/templates.png new file mode 100644 index 000000000..263cebb9d Binary files /dev/null and b/resources/azure/general/templates.png differ diff --git a/resources/azure/general/twousericon.png b/resources/azure/general/twousericon.png new file mode 100644 index 000000000..9d6d8c1ab Binary files /dev/null and b/resources/azure/general/twousericon.png differ diff --git a/resources/azure/general/userhealthicon.png b/resources/azure/general/userhealthicon.png new file mode 100644 index 000000000..b2e7e0cdc Binary files /dev/null and b/resources/azure/general/userhealthicon.png differ diff --git a/resources/azure/general/usericon.png b/resources/azure/general/usericon.png new file mode 100644 index 000000000..773ccd097 Binary files /dev/null and b/resources/azure/general/usericon.png differ diff --git a/resources/azure/general/userprivacy.png b/resources/azure/general/userprivacy.png new file mode 100644 index 000000000..09d22ce34 Binary files /dev/null and b/resources/azure/general/userprivacy.png differ diff --git a/resources/azure/general/userresource.png b/resources/azure/general/userresource.png new file mode 100644 index 000000000..1418179aa Binary files /dev/null and b/resources/azure/general/userresource.png differ diff --git a/resources/azure/general/whatsnew.png b/resources/azure/general/whatsnew.png new file mode 100644 index 000000000..2142d2b38 Binary files /dev/null and b/resources/azure/general/whatsnew.png differ diff --git a/resources/elastic/cloud.png b/resources/elastic/cloud.png new file mode 100644 index 000000000..92ee1c925 Binary files /dev/null and b/resources/elastic/cloud.png differ diff --git a/resources/elastic/elasticsearch/alerting.png b/resources/elastic/elasticsearch/alerting.png new file mode 100644 index 000000000..eb8c7c711 Binary files /dev/null and b/resources/elastic/elasticsearch/alerting.png differ diff --git a/resources/elastic/elasticsearch/elasticsearch.png b/resources/elastic/elasticsearch/elasticsearch.png new file mode 100644 index 000000000..10188c30e Binary files /dev/null and b/resources/elastic/elasticsearch/elasticsearch.png differ diff --git a/resources/elastic/elasticsearch/kibana.png b/resources/elastic/elasticsearch/kibana.png new file mode 100644 index 000000000..b856e29b8 Binary files /dev/null and b/resources/elastic/elasticsearch/kibana.png differ diff --git a/resources/elastic/elasticsearch/logstash.png b/resources/elastic/elasticsearch/logstash.png new file mode 100644 index 000000000..7beca0172 Binary files /dev/null and b/resources/elastic/elasticsearch/logstash.png differ diff --git a/resources/elastic/elasticsearch/machine-learning.png b/resources/elastic/elasticsearch/machine-learning.png new file mode 100644 index 000000000..d69926ce9 Binary files /dev/null and b/resources/elastic/elasticsearch/machine-learning.png differ diff --git a/resources/elastic/elasticsearch/maps.png b/resources/elastic/elasticsearch/maps.png new file mode 100644 index 000000000..5f597a9c3 Binary files /dev/null and b/resources/elastic/elasticsearch/maps.png differ diff --git a/resources/elastic/elasticsearch/monitoring.png b/resources/elastic/elasticsearch/monitoring.png new file mode 100644 index 000000000..00c9665c1 Binary files /dev/null and b/resources/elastic/elasticsearch/monitoring.png differ diff --git a/resources/elastic/elasticsearch/security-settings.png b/resources/elastic/elasticsearch/security-settings.png new file mode 100644 index 000000000..74a54816c Binary files /dev/null and b/resources/elastic/elasticsearch/security-settings.png differ diff --git a/resources/elastic/elasticsearch/sql.png b/resources/elastic/elasticsearch/sql.png new file mode 100644 index 000000000..ebb7fc3e9 Binary files /dev/null and b/resources/elastic/elasticsearch/sql.png differ diff --git a/resources/elastic/enterprisesearch/app-search.png b/resources/elastic/enterprisesearch/app-search.png new file mode 100644 index 000000000..a7217232d Binary files /dev/null and b/resources/elastic/enterprisesearch/app-search.png differ diff --git a/resources/elastic/enterprisesearch/enterprise-search.png b/resources/elastic/enterprisesearch/enterprise-search.png new file mode 100644 index 000000000..6354b21c4 Binary files /dev/null and b/resources/elastic/enterprisesearch/enterprise-search.png differ diff --git a/resources/elastic/enterprisesearch/site-search.png b/resources/elastic/enterprisesearch/site-search.png new file mode 100644 index 000000000..eb41bb9c7 Binary files /dev/null and b/resources/elastic/enterprisesearch/site-search.png differ diff --git a/resources/elastic/enterprisesearch/workplace-search.png b/resources/elastic/enterprisesearch/workplace-search.png new file mode 100644 index 000000000..5e38b5e60 Binary files /dev/null and b/resources/elastic/enterprisesearch/workplace-search.png differ diff --git a/resources/elastic/observability/apm.png b/resources/elastic/observability/apm.png new file mode 100644 index 000000000..3b1ba2844 Binary files /dev/null and b/resources/elastic/observability/apm.png differ diff --git a/resources/elastic/observability/logs.png b/resources/elastic/observability/logs.png new file mode 100644 index 000000000..2976ae210 Binary files /dev/null and b/resources/elastic/observability/logs.png differ diff --git a/resources/elastic/observability/metrics.png b/resources/elastic/observability/metrics.png new file mode 100644 index 000000000..bb354a076 Binary files /dev/null and b/resources/elastic/observability/metrics.png differ diff --git a/resources/elastic/observability/observability.png b/resources/elastic/observability/observability.png new file mode 100644 index 000000000..5844caa98 Binary files /dev/null and b/resources/elastic/observability/observability.png differ diff --git a/resources/elastic/observability/uptime.png b/resources/elastic/observability/uptime.png new file mode 100644 index 000000000..f4e2709d6 Binary files /dev/null and b/resources/elastic/observability/uptime.png differ diff --git a/resources/elastic/orchestration/ece.png b/resources/elastic/orchestration/ece.png new file mode 100644 index 000000000..82629553b Binary files /dev/null and b/resources/elastic/orchestration/ece.png differ diff --git a/resources/elastic/orchestration/eck.png b/resources/elastic/orchestration/eck.png new file mode 100644 index 000000000..b5135efa5 Binary files /dev/null and b/resources/elastic/orchestration/eck.png differ diff --git a/resources/elastic/security/endpoint.png b/resources/elastic/security/endpoint.png new file mode 100644 index 000000000..91facf99e Binary files /dev/null and b/resources/elastic/security/endpoint.png differ diff --git a/resources/elastic/security/security.png b/resources/elastic/security/security.png new file mode 100644 index 000000000..ebf98d169 Binary files /dev/null and b/resources/elastic/security/security.png differ diff --git a/resources/elastic/security/siem.png b/resources/elastic/security/siem.png new file mode 100644 index 000000000..4024b3c06 Binary files /dev/null and b/resources/elastic/security/siem.png differ diff --git a/resources/baas/firebase/firebase.png b/resources/firebase/base/firebase.png similarity index 100% rename from resources/baas/firebase/firebase.png rename to resources/firebase/base/firebase.png diff --git a/resources/baas/firebase/authentication.png b/resources/firebase/develop/authentication.png similarity index 100% rename from resources/baas/firebase/authentication.png rename to resources/firebase/develop/authentication.png diff --git a/resources/baas/firebase/cloud-firestore.png b/resources/firebase/develop/firestore.png similarity index 100% rename from resources/baas/firebase/cloud-firestore.png rename to resources/firebase/develop/firestore.png diff --git a/resources/baas/firebase/cloud-functions.png b/resources/firebase/develop/functions.png similarity index 100% rename from resources/baas/firebase/cloud-functions.png rename to resources/firebase/develop/functions.png diff --git a/resources/baas/firebase/hosting.png b/resources/firebase/develop/hosting.png similarity index 100% rename from resources/baas/firebase/hosting.png rename to resources/firebase/develop/hosting.png diff --git a/resources/baas/firebase/ml-kit.png b/resources/firebase/develop/ml-kit.png similarity index 100% rename from resources/baas/firebase/ml-kit.png rename to resources/firebase/develop/ml-kit.png diff --git a/resources/baas/firebase/realtime-database.png b/resources/firebase/develop/realtime-database.png similarity index 100% rename from resources/baas/firebase/realtime-database.png rename to resources/firebase/develop/realtime-database.png diff --git a/resources/baas/firebase/cloud-storage.png b/resources/firebase/develop/storage.png similarity index 100% rename from resources/baas/firebase/cloud-storage.png rename to resources/firebase/develop/storage.png diff --git a/resources/baas/firebase/extensions.png b/resources/firebase/extentions/extensions.png similarity index 100% rename from resources/baas/firebase/extensions.png rename to resources/firebase/extentions/extensions.png diff --git a/resources/baas/firebase/ab-testing.png b/resources/firebase/grow/ab-testing.png similarity index 100% rename from resources/baas/firebase/ab-testing.png rename to resources/firebase/grow/ab-testing.png diff --git a/resources/baas/firebase/app-indexing.png b/resources/firebase/grow/app-indexing.png similarity index 100% rename from resources/baas/firebase/app-indexing.png rename to resources/firebase/grow/app-indexing.png diff --git a/resources/baas/firebase/dynamic-links.png b/resources/firebase/grow/dynamic-links.png similarity index 100% rename from resources/baas/firebase/dynamic-links.png rename to resources/firebase/grow/dynamic-links.png diff --git a/resources/baas/firebase/in-app-messaging.png b/resources/firebase/grow/in-app-messaging.png similarity index 100% rename from resources/baas/firebase/in-app-messaging.png rename to resources/firebase/grow/in-app-messaging.png diff --git a/resources/baas/firebase/invites.png b/resources/firebase/grow/invites.png similarity index 100% rename from resources/baas/firebase/invites.png rename to resources/firebase/grow/invites.png diff --git a/resources/baas/firebase/cloud-messaging.png b/resources/firebase/grow/messaging.png similarity index 100% rename from resources/baas/firebase/cloud-messaging.png rename to resources/firebase/grow/messaging.png diff --git a/resources/baas/firebase/predictions.png b/resources/firebase/grow/predictions.png similarity index 100% rename from resources/baas/firebase/predictions.png rename to resources/firebase/grow/predictions.png diff --git a/resources/baas/firebase/remote-config.png b/resources/firebase/grow/remote-config.png similarity index 100% rename from resources/baas/firebase/remote-config.png rename to resources/firebase/grow/remote-config.png diff --git a/resources/baas/firebase/app-distribution.png b/resources/firebase/quality/app-distribution.png similarity index 100% rename from resources/baas/firebase/app-distribution.png rename to resources/firebase/quality/app-distribution.png diff --git a/resources/baas/firebase/crash-reporting.png b/resources/firebase/quality/crash-reporting.png similarity index 100% rename from resources/baas/firebase/crash-reporting.png rename to resources/firebase/quality/crash-reporting.png diff --git a/resources/baas/firebase/crashlytics.png b/resources/firebase/quality/crashlytics.png similarity index 100% rename from resources/baas/firebase/crashlytics.png rename to resources/firebase/quality/crashlytics.png diff --git a/resources/baas/firebase/performance-monitoring.png b/resources/firebase/quality/performance-monitoring.png similarity index 100% rename from resources/baas/firebase/performance-monitoring.png rename to resources/firebase/quality/performance-monitoring.png diff --git a/resources/baas/firebase/test-lab.png b/resources/firebase/quality/test-lab.png similarity index 100% rename from resources/baas/firebase/test-lab.png rename to resources/firebase/quality/test-lab.png diff --git a/resources/generic/blank/blank.png b/resources/generic/blank/blank.png new file mode 100644 index 000000000..98801cae7 Binary files /dev/null and b/resources/generic/blank/blank.png differ diff --git a/resources/generic/compute/rack.png b/resources/generic/compute/rack.png new file mode 100644 index 000000000..c749fdd2c Binary files /dev/null and b/resources/generic/compute/rack.png differ diff --git a/resources/generic/network/firewall.png b/resources/generic/network/firewall.png new file mode 100644 index 000000000..e6c21830d Binary files /dev/null and b/resources/generic/network/firewall.png differ diff --git a/resources/generic/network/router.png b/resources/generic/network/router.png new file mode 100644 index 000000000..377e2b551 Binary files /dev/null and b/resources/generic/network/router.png differ diff --git a/resources/generic/network/switch.png b/resources/generic/network/switch.png new file mode 100644 index 000000000..9699b6910 Binary files /dev/null and b/resources/generic/network/switch.png differ diff --git a/resources/generic/network/vpn.png b/resources/generic/network/vpn.png new file mode 100644 index 000000000..009e8437b Binary files /dev/null and b/resources/generic/network/vpn.png differ diff --git a/resources/generic/place/datacenter.png b/resources/generic/place/datacenter.png new file mode 100644 index 000000000..064eaa8f4 Binary files /dev/null and b/resources/generic/place/datacenter.png differ diff --git a/resources/generic/storage/storage.png b/resources/generic/storage/storage.png new file mode 100644 index 000000000..3b3027297 Binary files /dev/null and b/resources/generic/storage/storage.png differ diff --git a/resources/onprem/ci/gitlabci.png b/resources/onprem/ci/gitlabci.png new file mode 100644 index 000000000..5cc42cda5 Binary files /dev/null and b/resources/onprem/ci/gitlabci.png differ diff --git a/resources/onprem/ci/zuulci.png b/resources/onprem/ci/zuulci.png new file mode 100644 index 000000000..40c0f2fa6 Binary files /dev/null and b/resources/onprem/ci/zuulci.png differ diff --git a/resources/onprem/database/couchbase.png b/resources/onprem/database/couchbase.png new file mode 100644 index 000000000..6144f54b7 Binary files /dev/null and b/resources/onprem/database/couchbase.png differ diff --git a/resources/onprem/gitops/flagger.png b/resources/onprem/gitops/flagger.png new file mode 100644 index 000000000..de8835dfe Binary files /dev/null and b/resources/onprem/gitops/flagger.png differ diff --git a/resources/onprem/gitops/flux.png b/resources/onprem/gitops/flux.png new file mode 100644 index 000000000..057b6361f Binary files /dev/null and b/resources/onprem/gitops/flux.png differ diff --git a/resources/onprem/monitoring/sentry.png b/resources/onprem/monitoring/sentry.png new file mode 100644 index 000000000..b30290da0 Binary files /dev/null and b/resources/onprem/monitoring/sentry.png differ diff --git a/resources/programming/language/rust.png b/resources/programming/language/rust.png new file mode 100644 index 000000000..a9f7fa152 Binary files /dev/null and b/resources/programming/language/rust.png differ diff --git a/resources/saas/chat/slack.png b/resources/saas/chat/slack.png new file mode 100644 index 000000000..b2cf219e8 Binary files /dev/null and b/resources/saas/chat/slack.png differ diff --git a/resources/saas/chat/telegram.png b/resources/saas/chat/telegram.png new file mode 100644 index 000000000..d52b904cb Binary files /dev/null and b/resources/saas/chat/telegram.png differ diff --git a/resources/saas/social/facebook.png b/resources/saas/social/facebook.png new file mode 100755 index 000000000..3ffb63c6c Binary files /dev/null and b/resources/saas/social/facebook.png differ diff --git a/resources/saas/social/twitter.png b/resources/saas/social/twitter.png new file mode 100644 index 000000000..8320d575b Binary files /dev/null and b/resources/saas/social/twitter.png differ diff --git a/scripts/generate.py b/scripts/generate.py index 7ec0a8798..fedee589a 100644 --- a/scripts/generate.py +++ b/scripts/generate.py @@ -7,7 +7,7 @@ import config as cfg from . import app_root_dir, doc_root_dir, resource_dir, template_dir -_usage = "Usage: generate.py " +_usage = "Usage: generate.py " def load_tmpl(tmpl: str) -> Template: @@ -50,7 +50,7 @@ def _gen_class_name(path: str) -> str: return name typ_classes = {} - for typ, paths in typ_paths.items(): + for typ, paths in sorted(typ_paths.items()): typ_classes[typ] = [] for name in map(_gen_class_name, paths): alias = cfg.ALIASES[pvd].get(typ, {}).get(name) diff --git a/scripts/resource.py b/scripts/resource.py index 10575af11..20aee58e7 100644 --- a/scripts/resource.py +++ b/scripts/resource.py @@ -24,6 +24,7 @@ def cleaner_onprem(f): def cleaner_aws(f): f = f.replace("_", "-") f = f.replace("@4x", "") + f = f.replace("-light-bg4x", "") f = f.replace("-light-bg", "") for p in cfg.FILE_PREFIXES["aws"]: if f.startswith(p): @@ -53,6 +54,16 @@ def cleaner_gcp(f): return f.lower() +def cleaner_firebase(f): + f = f.replace("_", "-") + f = "-".join(f.split()) + for p in cfg.FILE_PREFIXES["firebase"]: + if f.startswith(p): + f = f[len(p) :] + break + return f.lower() + + def cleaner_k8s(f): f = f.replace("-256", "") for p in cfg.FILE_PREFIXES["k8s"]: @@ -83,16 +94,30 @@ def cleaner_oci(f): def cleaner_programming(f): return f.lower() +def cleaner_generic(f): + return f.lower() + +def cleaner_saas(f): + return f.lower() + + +def cleaner_elastic(f): + return f.lower() + cleaners = { "onprem": cleaner_onprem, "aws": cleaner_aws, "azure": cleaner_azure, "gcp": cleaner_gcp, + "firebase": cleaner_firebase, "k8s": cleaner_k8s, "alibabacloud": cleaner_alibabacloud, "oci": cleaner_oci, "programming": cleaner_programming, + "saas": cleaner_saas, + "elastic": cleaner_elastic, + "generic": cleaner_generic, } diff --git a/website/core/Footer.js b/website/core/Footer.js index 705188f30..8f1c17597 100644 --- a/website/core/Footer.js +++ b/website/core/Footer.js @@ -51,7 +51,7 @@ class Footer extends React.Component {
More
- +
{this.props.config.copyright}
); diff --git a/website/i18n/en.json b/website/i18n/en.json index ac75a4330..2c1e8562b 100644 --- a/website/i18n/en.json +++ b/website/i18n/en.json @@ -32,6 +32,12 @@ "nodes/azure": { "title": "Azure" }, + "nodes/elastic": { + "title": "Elastic" + }, + "nodes/firebase": { + "title": "Firebase" + }, "nodes/gcp": { "title": "GCP" }, @@ -46,13 +52,17 @@ }, "nodes/programming": { "title": "Programming" + }, + "nodes/saas": { + "title": "Saas" } }, "links": { "Docs": "Docs", "Guides": "Guides", "Nodes": "Nodes", - "GitHub": "GitHub" + "GitHub": "GitHub", + "Sponsoring": "Sponsoring" }, "categories": { "Getting Started": "Getting Started", diff --git a/website/pages/en/index.js b/website/pages/en/index.js index cc0bdcaa4..117ba514a 100644 --- a/website/pages/en/index.js +++ b/website/pages/en/index.js @@ -111,6 +111,20 @@ class Index extends React.Component { ); + const Sponsorship = () => ( +
+

Sponsorship

+ + Sponsoring always helps a lot to maintain Diagrams. Thank you :) + + + Buy Me A Coffee + +
+ ); + const Example = () => ( {[ @@ -148,6 +162,7 @@ class Index extends React.Component { + ); diff --git a/website/sidebars.json b/website/sidebars.json index 3e80df07a..91d5d7091 100644 --- a/website/sidebars.json +++ b/website/sidebars.json @@ -18,7 +18,10 @@ "nodes/k8s", "nodes/alibabacloud", "nodes/oci", - "nodes/programming" + "nodes/programming", + "nodes/firebase", + "nodes/saas", + "nodes/elastic" ] } } \ No newline at end of file diff --git a/website/siteConfig.js b/website/siteConfig.js index aea9355c7..16cce1ccc 100644 --- a/website/siteConfig.js +++ b/website/siteConfig.js @@ -22,6 +22,7 @@ const siteConfig = { {doc: 'guides/diagram', label: 'Guides'}, {doc: 'nodes/aws', label: 'Nodes'}, {href: 'https://github.com/mingrammer/diagrams', label: 'GitHub'}, + {href: 'https://www.buymeacoffee.com/mingrammer', label: 'Sponsoring'}, ], headerIcon: 'img/diagrams.ico', diff --git a/website/static/css/custom.css b/website/static/css/custom.css index 01aa4ed36..235f62698 100644 --- a/website/static/css/custom.css +++ b/website/static/css/custom.css @@ -20,4 +20,8 @@ } @media only screen and (min-width: 1500px) { +} + +#buymeacoffee { + height: 50px; } \ No newline at end of file