{"id":21094981,"url":"https://github.com/wizardjedi/a1s-plantuml-lib","last_synced_at":"2026-03-19T18:50:44.810Z","repository":{"id":223270421,"uuid":"759722496","full_name":"wizardjedi/a1s-plantuml-lib","owner":"wizardjedi","description":"Библиотека компонентов для диаграмм PlantUML с сфере телекома и мобильной связи","archived":false,"fork":false,"pushed_at":"2024-02-23T13:04:35.000Z","size":1995,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-21T01:42:39.383Z","etag":null,"topics":["diagram","messenger","mobile","operators","plantuml","sprites","telecom"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wizardjedi.png","metadata":{"files":{"readme":"README.adoc","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-19T08:03:06.000Z","updated_at":"2024-02-20T09:12:01.000Z","dependencies_parsed_at":"2024-02-23T10:29:51.535Z","dependency_job_id":"0a789d06-9823-4b99-a5dd-d43b08cadaf9","html_url":"https://github.com/wizardjedi/a1s-plantuml-lib","commit_stats":null,"previous_names":["wizardjedi/a1s-plantuml-lib"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wizardjedi%2Fa1s-plantuml-lib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wizardjedi%2Fa1s-plantuml-lib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wizardjedi%2Fa1s-plantuml-lib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wizardjedi%2Fa1s-plantuml-lib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wizardjedi","download_url":"https://codeload.github.com/wizardjedi/a1s-plantuml-lib/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243538137,"owners_count":20307104,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["diagram","messenger","mobile","operators","plantuml","sprites","telecom"],"created_at":"2024-11-19T22:21:43.081Z","updated_at":"2026-01-02T10:03:43.912Z","avatar_url":"https://github.com/wizardjedi.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"= A1S PlantUML Lib\n:toc:\n:sectnums:\n:sectnumlevels: 5\n:outlinelevels: 5\n:sectids:\n\nБиблиотека тем и спрайтов A1S.\n\nWARNING: Отказ от ответственности: все права принадлежат их владельцам. Данные получены из открытых источников и сети Интернет. Данная библиотека предоставляется в режиме AS-IS. Автор не несёт ответственности в случае ущерба, понесённого в результате использования данной библиотеки.\n\nTIP: В случае, если у вас есть более качественная версия логотипа или более точная версия цвета, то можете создать MR (fork + pull request/merge request).\n\nВ телекоме и в области мобильной связи часто возникает необходимость в диагрммах, например, диаграммах прохождения трафика или каких-то даиграммах последовательностей.\n\nОдним из лучших, если не самым лучшим инстурментом для рисования диаграмм и схем (в парадигде `diagram as a code`) является PlantUML ( https://plantuml.com/ ).\n\nКроме того, у данного инструмента есть множество интеграций с другими системами:\n\n * Confluence https://marketplace.atlassian.com/apps/41025/plantuml-for-confluence?tab=overview\u0026hosting=datacenter\n * Intellij Idea https://plugins.jetbrains.com/plugin/7017-plantuml-integration\n * MS VS Code https://marketplace.visualstudio.com/items?itemName=jebbs.plantuml\n\nТак как достаточно часто приходится рисовать диаграммы, то и появилась необходимость собрать часто используемые части/компоненты в виде библиотеки.\n\nНапример, очень не хватало логотипов операторов.\n\nПри использовании данной библиотеки можно строить диаграммы такого вида:\n\n.Пример диаграммы с использованием библиотеки\nimage::_example/simple.png[]\n\nВ виде такого текстового описания:\n\n.Пример текста для генерации диаграммы\n[source,puml]\n----\n@startuml\n\ntitle Схема прохождения трафика\n\n!include https://raw.githubusercontent.com/wizardjedi/a1s-plantuml-lib/master/a1s-lib.puml\n\nrectangle \"\u003c$megafon_s,scale=0.5,color=$CLR_MEGAFON_1\u003e\" as megafon\nrectangle \"\u003c$mts_s,scale=0.5,color=$CLR_MTS_1\u003e\" as mts\nrectangle \"\u003c$beeline_s,scale=0.5\u003e\" as beeline $CLR_BEELINE_1\nrectangle \"\u003c$tele2_s,scale=0.5,color=$CLR_TELE2_1\u003e\" as tele2\n\nrectangle \"\u003c$smstraffic_s,scale=0.5,color=$CLR_SMSTRAFFIC_1\u003e\\nSMS Traffic\" as smstraffic\nrectangle \"\u003c$devino_s,scale=0.5,color=$CLR_DEVINO_1\u003e\\nDevino Telecom\" as devino\n\nleft to right direction\n\nactor client\n\nclient --\u003e smstraffic : smpp 50%\nclient --\u003e devino : smpp 50%\n\nsmstraffic --\u003e tele2\nsmstraffic --\u003e mts $CLR_MTS_1\nsmstraffic --\u003e megafon $CLR_MEGAFON_1\nsmstraffic --\u003e beeline $CLR_BEELINE_1\n\ndevino --\u003e tele2\ndevino --\u003e mts $CLR_MTS_1\ndevino --\u003e megafon $CLR_MEGAFON_1\ndevino --\u003e beeline $CLR_BEELINE_1\n\n@enduml\n----\n\n== Подключение\n\nДля подключения библиотеки необходимо либо скачать библиотеку и использовать с локальной файловой системы или импортировать по URL.\n\n.Пример подключения библиотеки по URL\n[source,puml]\n----\n!include https://raw.githubusercontent.com/wizardjedi/a1s-plantuml-lib/master/a1s-lib.puml\n----\n\nWARNING: PlantUML имеет ограничения безопасности по импорту библиотек по URL. Настройки безопасности описаны на соответствующзей странице https://plantuml.com/security\n\n=== Пример подключения для Confluence\n\nПлагин PlantUML для Confluence может загружать файлы из приложений к страницам ( https://avono-support.atlassian.net/wiki/spaces/PUML/pages/9699367/Macro+plantuml ).\n\nДля Confluence алгоритм подключения будет таким:\n\n* Скачиваем файл с описанием библиотеки https://raw.githubusercontent.com/wizardjedi/a1s-plantuml-lib/master/a1s-lib.puml\n* Для корневой (или какой-то другой страницы) добавляем файл `a1s-lib.puml` в приложения (attachment)\n* В тексте диаграммы подключаем данный файл с помощью синтаксиса включения\n+\n----\n^attachment.ext\npagetitle\npagetitle^attachment.ext\nspacekey:pagetitle\nspacekey:pagetitle^attachment.ext\n----\n\nНапример, для пространства `superspace` и страницы `Space Home`.\n\n[source,puml]\n----\n...\n!include superspace:Space home^a1s-lib.puml\n...\n----\n\n== Системные переменные\n\n.Системные переменные\n[%header]\n|===\n|Переменная|Описание\nm|`$A1S_LIB_VERSION` |Текущая версия библиотеки (например, `1.0.0`)\n|===\n\n\n== Цвета\n\nДля использования на диаграммах были выделены базовые цвета и дополнительно созданы оттенки данных базовых цветов для использования.\n\nДля всех цветов дейсвтую следующие правила:\n\n* Переменная цвета начинается с префикса `CLR_` (например, `CLR_BLUE` - синий цвет)\n* Для оттенков используются суффиксы с насыщенностью от 100(светлый) до 900(тёмный) (базовый цвет имеет насущенность 500) (например, `CLR_ORANGE_100` - самый светлый из оранжевых оттенков)\n\n.Базовые цвета\n[%header]\n|===\n|Переменная|Значение|Описание\n|`$CLR_RED`|`#d60f0f`|Красный\n|`$CLR_BLUE`|`#1053b0`|Синий\n|`$CLR_GREEN`|`#37750b`|Зелёный\n|`$CLR_ORANGE`|`#fe6300`|Оранжевый\n|`$CLR_YELLOW`|`#fffb16`|Жёлтый\n|`$CLR_PURPLE`|`#7a0f91`|Фиолетовый\n|`$CLR_BROWN`|`#4b1414`|Коричневый\n|`$CLR_GRAY`|`#acacac`|Серый\n|`$CLR_BLACK`|`#000000`|Чёрный\n|`$CLR_WHITE`|`#FFFFFF`|Белый\n|`$CLR_LIGHTBLUE`|`#67a7ff`|Голубой\n|`$CLR_PINK`| `#fe59db`|Розовый\n|===\n\n.Палитра цветов\nimage::_images/img-color-palette.png[]\n\n.Цвета в PlantUML\nimage::_example/colors.png[]\n\n=== Специальные цвета\n\nВ диаграммах (особенно даиграммах последовталеьностей) часто используются альтернативные ветки исполнения. Например, успешны сценарий, ошибочный, некоторое количество алтернатив и исключения.\n\nДля данных сценариев добавлены специальные переменные для указания цветов:\n\n[%header]\n|====\n|Переменная|Описание\n|`$CLR_SUCCESS`|Успешно\n|`$CLR_ERROR`|Ошибка\n|`$CLR_ALT`|Альтернатива\n|`$CLR_EXCEPTION`|Исключение\n|====\n\n.Пример использования специальных цветов для веток исполнения\nimage::_example/special-colors.png[]\n\n.Пример использования специальных цветов\n[source,puml]\n----\n...\nalt $CLR_SUCCESS Успешная отправка\n    a1s --\u003e viber : Отправка сообщения\nelse $CLR_ALT Альтернативный сценарий\n    a1s --\u003e whatsapp : Отправка сообщения\nelse $CLR_ERROR Ошибка отправки\n    a1s --x viber : Ошибка отправки\n\n    a1s --\u003e whatsapp : Переотправка сообщения\nelse $CLR_EXCEPTION Режим аварии\n    a1s --\u003e telegram : Уведомление группы мониторинга\nend\n...\n----\n\n=== Корпоративные цвета\n\nДля логотипов компаний и сервисов были выделены корпоративные или цвета бренда. Такие цвета записаны в переменных вида `$CLR_\u003cBRAND\u003e_\u003cНОМЕР\u003e` (например, `$CLR_TELE2_1`).\n\n[%header]\n|===\n|Переменная|Значение|Описание\nm|$CLR_T2_1 m|#000000|Т2 РФ\nm|$CLR_T2_2 m|#ffffff|Т2 РФ\nm|$CLR_T2_3 m|#ff3495|Т2 РФ\nm|$CLR_T2_4 m|#a7fc00|Т2 РФ\nm|$CLR_T2_5 m|#0000ff|Т2 РФ\nm|$CLR_T2_6 m|#00bfff|Т2 РФ\n|`$CLR_MEGAFON_1`|`#00b956`|Мегафон РФ\n|`$CLR_MEGAFON_2`|`#731982`|Мегафон РФ\n|`$CLR_MTS_1`|`#cc061a`|МТС РФ\n|`$CLR_BEELINE_1`|`#ffcc00`|Билайн(Вымпелком) РФ\n|`$CLR_BEELINE_2`|`#13171b`|Билайн(Вымпелком) РФ\n|`$CLR_YOTA_1`|`#00aeef`|Йота РФ\n|`$CLR_MOTIV_1`|`#fa6600`|Мотив РФ/Екатеринбург-2000\n|`$CLR_ROSTELECOM_1`|`#7700ff`|Ростелеком\n|`$CLR_ROSTELECOM_2`|`#ff4f12`|Ростелеком\n|`$CLR_DEVINO_1`|`#717fff`|Девино телеком\n|`$CLR_SMSTRAFFIC_1`|`#004b93`|СМС Траффик\n|`$CLR_EDNA_1`|`#00ea43`|ОСК/Эдна\n|`$CLR_A1S_1`|`#dc220b`|А1 Системс\n|`$CLR_A1S_2`|`#2c2f30`|А1 Системс\n|`$CLR_PROTEY_1`|`#009cf7`|НТЦ Протей\n|`$CLR_BERKUT_1`|`#2070FD`|Беркут\n|`$CLR_VIBER_1`|`#7360f2`|Viber/Вайбер\n|`$CLR_WHATSAPP_1`|`#075E54`|WhatsApp\n|`$CLR_WHATSAPP_2`|`#25D366`|WhatsApp\n|`$CLR_TELEGRAM_1`|`#24A1DE`|Telegram\n|`$CLR_SKYPE_1`|`#00AFF0`|Skype\n|`$CLR_ZOOM_1`|`#0B5CFF`|Zoom\n|`$CLR_TELE2_1`|`#1f2229`|Теле2 РФ\n|`$CLR_TELE2_2`|`#ff59a3`|Теле2 РФ\n|`$CLR_TELE2_3`|`#00b4ee`|Теле2 РФ\n|`$CLR_TELE2_4`|`#c882ff`|Теле2 РФ\n|===\n\n.Таблица корпоративных цветов для иллюстрации\nimage::_example/corporate-colors.png[]\n\nWARNING: Цвета были получены из открытых источников. В частности с корпоративных сайтов с использованием инструмента CSS Overview из Chrome Developer Tools.\n\n=== Градиенты\n\nБиблиотека содержит переменные с градиентами, которые начинаются с префикса `GRD_CLR_`.\n\n[%header]\n|===\n|Переменная|Описание\n|`$GRD_CLR_RED`|Красный градиент\n|`$GRD_CLR_BLUE`|Синий градиент\n|`$GRD_CLR_GREEN`|Зелёный градиент\n|`$GRD_CLR_ORANGE`|Оранжевый градиент\n|`$GRD_CLR_YELLOW`|Жёлтый градиент\n|`$GRD_CLR_PURPLE`|Фиолетовый градиент\n|`$GRD_CLR_BROWN`|Коричневый градиент\n|`$GRD_CLR_GRAY`|Серый градиент\n|`$GRD_CLR_LIGHTBLUE`|Голубой градиент\n|`$GRD_CLR_PINK`|Розовый градиент\n|`$GRD_CLR_DARK_RED`|Тёмный красный градиент\n|`$GRD_CLR_DARK_BLUE`|Тёмный синий градиент\n|`$GRD_CLR_DARK_GREEN`|Тёмный зелёный градиент\n|`$GRD_CLR_DARK_ORANGE`|Тёмный оранжевый градиент\n|`$GRD_CLR_DARK_YELLOW`|Тёмный жёлтый градиент\n|`$GRD_CLR_DARK_PURPLE`|Тёмный фиолетовый градиент\n|`$GRD_CLR_DARK_BROWN`|Тёмный коричневый градиент\n|`$GRD_CLR_DARK_GRAY`|Тёмный серый градиент\n|`$GRD_CLR_DARK_LIGHTBLUE`|Тёмный голубой градиент\n|`$GRD_CLR_DARK_PINK`|Тёмный розовый градиент\n\n|===\n\nimage::_example/gradients.png[]\n\nПеременную `$GRD_CLR_BG_PRIMARY` пользователь может определить до включения библиотеки для переопределения фона по умолчанию для компонентов диаграмм.\n\n== Спрайты\n\n.Пример использования спрайтов\n----\ncard \"\u003c$beeline\u003e\" as beeline\n\nrectangle \"\u003c$megafon,scale=0.5,color=$CLR_MEGAFON_1\u003e\" as megafon $CLR_MEGAFON_2\n----\n\n* Спрайты разбиты на группы\n** `messengers` - мессенджеры\n** `mobile-operators` - логотипы мобильных операторов\n** `sms-agregators` - логотипы СМС-агрегаторов\n** `vendors` - вендоры\n* Для спрайтов приняты следюущие размеры, которые оформляются в виде суффиксов к имени файла\n** `_s` - маленький, только логотип, размер `128px x 128px` (пример, `\u003c$megafon_s\u003e`)\n** `_l` - большой, логотип с названием, максимальный размер по ширине `300px` (пример, `\u003c$motiv_l\u003e`)\n* Исходные изображения для спрайтов сохранены в директориях `src` соответствующей директории с категориями\n\n=== Вендоры\n\n[%header]\n|===\n|Спрайт|Изображение|Размеры\n|`\u003c$a1s_l\u003e` a|image::vendors/a1s_l.png[] | 300x105\n|`\u003c$a1s_s\u003e` a|image::vendors/a1s_s.png[] | 128x128\n|`\u003c$protey_l\u003e` a|image::vendors/protey_l.png[] | 300x105\n|`\u003c$protey_s\u003e` a|image::vendors/protey_s.png[] | 128x128\n|`\u003c$berkut_l\u003e` a|image::vendors/berkut_l.png[] | 300x105\n|`\u003c$berkut_s\u003e` a|image::vendors/berkut_s.png[] | 128x128\n|===\n\n=== Мобильный операторы РФ\n\n[%header]\n|===\n|Спрайт|Изображение|Размеры\n|`\u003c$beeline_l\u003e` a|image::mobile-operators/beeline_l.png[]| 300x63\n|`\u003c$beeline_s\u003e` a|image::mobile-operators/beeline_s.png[]| 128x128\n|`\u003c$megafon_l\u003e` a|image::mobile-operators/megafon_l.png[]| 300x54\n|`\u003c$megafon_s\u003e` a|image::mobile-operators/megafon_s.png[]| 128x128\n|`\u003c$motiv_l\u003e` a|image::mobile-operators/motiv_l.png[]| 300x56\n|`\u003c$motiv_s\u003e` a|image::mobile-operators/motiv_s.png[]| 128x128\n|`\u003c$mts_l\u003e` a|image::mobile-operators/mts_l.png[]| 300x300\n|`\u003c$mts_s\u003e` a|image::mobile-operators/mts_s.png[]| 128x128\n|`\u003c$rostelecom_l\u003e` a|image::mobile-operators/rostelecom_l.png[]| 300x77\n|`\u003c$rostelecom_s\u003e` a|image::mobile-operators/rostelecom_s.png[]| 128x128\n|`\u003c$sbermobile_l\u003e` a|image::mobile-operators/sbermobile_l.png[]| 300x39\n|`\u003c$sbermobile_s\u003e` a|image::mobile-operators/sbermobile_s.png[]| 128x128\n|`\u003c$t2_l\u003e` a|image::mobile-operators/t2_l.png[]| 300x300\n|`\u003c$t2_s\u003e` a|image::mobile-operators/t2_s.png[]| 128x128\n|`\u003c$tinkoff_l\u003e` a|image::mobile-operators/tinkoff_l.png[]| 300x92\n|`\u003c$tinkoff_s\u003e` a|image::mobile-operators/tinkoff_s.png[]| 136x128\n|`\u003c$yota_l\u003e` a|image::mobile-operators/yota_l.png[]| 300x95\n|`\u003c$yota_s\u003e` a|image::mobile-operators/yota_s.png[]| 128x128\n|===\n\n.Старые версии логотипов\n[%header]\n|===\n|Спрайт|Изображение|Размеры|Дата смены\n|`\u003c$tele2_l\u003e` a|image::mobile-operators/tele2_l.png[]| 300x118 | 2024-12-31\n|`\u003c$tele2_s\u003e` a|image::mobile-operators/tele2_s.png[]| 128x128 | 2024-12-31\n|===\n\n=== SMS-агрегаторы РФ\n\n[%header]\n|===\n|Спрайт|Изображение|Размеры\n|`\u003c$devino_l\u003e` a|image::sms-agregators/devino_l.png[] |300x115\n|`\u003c$devino_s\u003e` a|image::sms-agregators/devino_s.png[] |128x128\n|`\u003c$edna_l\u003e` a|image::sms-agregators/edna_l.png[] |300x93\n|`\u003c$edna_s\u003e` a|image::sms-agregators/edna_s.png[] |128x128\n|`\u003c$rapporto_l\u003e` a|image::sms-agregators/rapporto_l.png[] |300x77\n|`\u003c$rapporto_s\u003e` a|image::sms-agregators/rapporto_s.png[] |128x128\n|`\u003c$smstraffic_l\u003e` a|image::sms-agregators/smstraffic_l.png[] |300x50\n|`\u003c$smstraffic_s\u003e` a|image::sms-agregators/smstraffic_s.png[] |128x128\n|===\n\n=== Instant Messengers\n\n[%header]\n|===\n|Спрайт|Изображение|Размеры\n|`\u003c$skype_s\u003e` a|image::messengers/skype_s.png[] | 128x128\n|`\u003c$telegram_s\u003e` a|image::messengers/telegram_s.png[] | 128x128\n|`\u003c$viber_s\u003e` a|image::messengers/viber_s.png[] | 128x128\n|`\u003c$whatsapp_s\u003e` a|image::messengers/whatsapp_s.png[] | 128x128\n|`\u003c$zoom_s\u003e` a|image::messengers/zoom_s.png[] | 128x128\n|===\n\n== Сборка\n\nБазой для сборки библиотеки является метаописание компонентов в виде JSON объектов. Мета описание располагается в файле `meta.json`.\n\nДля сборки используется PHP-скрипт, который собирает библиотеку из составных частей.\n\n.Сборка из командной строки\n[source,shell]\n----\n$ php build.php\n----\n\n.Сборка в Docker-контейнере\n[source,shell]\n----\n$ docker run --rm -it ..... build.php\n----\n\n\n== Общий алгоритм к созданию спрайтов\n\n. Находим необходимый спрайт, например, на сайте компании\n. Копируем логотип и открываем в графикческом редакторе\n.. Если логотип прозрачный, то добавляем слой с белым фоном и объединяем слои\n. Переводим изображение в оттенки серого\n. Переходим в настройку уровней (Levels)\n. Переводим ползунок в крайнеправое положение для получения чёрного цвета\n.. В случае, если логотип содержим какие-то переходы, то можно переводить ползунок цвета в такое положение, при котором сохраняются переходы\n. Масштабируем изображение до размеров (`300` по ширине для длинных логотипов и `128x128` для иконок)\n. Сохраняем изображение в соответствующий файл `.png`\n. Используем команду для обработки спрайтов\n+\n[source,shell]\n----\n$ java -jar plantuml.jar -encodesprite 16z supersprite_l.png\n\nsprite $supersprite_l [300x105/16z] {\n...\n}\n\n----\n. Полученный вывод (`sprite $supersprite ...`) добавляем в файл `.puml`\n\n\n[appendix]\n== Частые вопросы\n\n[qanda]\nПочему картинки чёрные?:: Это связано с ограничениями PlantUML. На текущий момент можно использовать только спрайты в виде монохромных изображений, переведённые в текстовое описание см. https://plantuml.com/sprite\n+\nТакое тектсовое описание позволяет встраивать изображения в текст диаграммы и не требует наличия доступных ресурсов во вне.\n\nА если у меня есть доступные внешние ресурсы по ссылке?:: В случае, если есть доутпные по ссылке или в файловой системе ресурсы, то можно воспользоваться форматированием creole\n+\n[source,puml]\n----\n\n'Можно использовать \u003cimg:ссылка\u003e или \u003cimg:путь\u003e для использоания ВНЕШНИХ изображений\nrectangle \"\u003cimg:https://supersite.tld/super-image.png\u003e\" as r3\n----\n\n[appendix]\n== Известные проблемы и ограничения\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwizardjedi%2Fa1s-plantuml-lib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwizardjedi%2Fa1s-plantuml-lib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwizardjedi%2Fa1s-plantuml-lib/lists"}