Skip to main content

Создание диаграмм из датаклассов python

Project description

PyPI version

dataclass_to_diagram

Создание диаграмм из датаклассов python

Типы диаграмм

С4

Описание - https://c4model.com/

Реализация на PlantUML - https://github.com/plantuml-stdlib/C4-PlantUML

Состоит из пакетов:

  • main - основной пакет для запуска
  • models - модели на основе dataclass для различных диаграмм
  • exporters - экспорт моделей в текстовый формат
  • converters - конвертирование текстового формата в изображение (svg, png, pdf, ...)

exporters

dbml

Экспорт моделей БД (ERD) в формат dbml

converters

dbml-renderer

Конвертирует файл с разметкой dbml в svg-изображение.

Установка:

npm install -g @softwaretechnik/dbml-renderer

Библиотека для генерации диаграмм из текстового описания.

Диаграммы описываются объектами python. Далее геренируются изображения с помощью https://kroki.io.

Как использовать

  1. Создать две папки:

    • dia_src - папка с исходным описанием
    • dia_dist - папка со сгенерированными изображениями
  2. В папке dia_src создаются py-файлы. Названия файлов - произвольные. Можно создавать подкаталоги - структура каталогов будет скопирована в целевую папку dia_dist. Примеры создания можно посмотреть в тестовых диаграммах пакета.

  3. В одном файл должна быть только одна диаграмма. Название файла будет названием диаграммы.

  4. Для генерации можно создать задачу poetepoet. Прописать в файле pyproject.toml:

    [tool.poetry.dependencies]
    konstantin_docs = "*"
    poethepoet = "*"
    
    [tool.poe.tasks]
    docs = {script = "konstantin_docs.main:generate_images('dia_src', 'dia_dist')"}
    
  5. Запустить командой:

    poetry run poe docs
    
  6. Дополнительно можно создать задачу в vscode. Для этого в файле .vscode/tasks.json:

    {
      "version": "2.0.0",
      "tasks": [
        {
          "label": "docs",
          "type": "shell",
          "command": "poetry run poe docs"
        }
      ]
    }
    

    Запускать командой F1 -> Task: Run task -> docs

ERD

npm install -g @softwaretechnik/dbml-renderer

Разработка

poetry build && poetry publish

Project details


Download files

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

Source Distribution

dataclass_to_diagram-0.0.2.tar.gz (42.7 kB view details)

Uploaded Source

Built Distribution

dataclass_to_diagram-0.0.2-py3-none-any.whl (65.9 kB view details)

Uploaded Python 3

File details

Details for the file dataclass_to_diagram-0.0.2.tar.gz.

File metadata

  • Download URL: dataclass_to_diagram-0.0.2.tar.gz
  • Upload date:
  • Size: 42.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.1 CPython/3.10.6 Linux/5.15.0-57-generic

File hashes

Hashes for dataclass_to_diagram-0.0.2.tar.gz
Algorithm Hash digest
SHA256 90175f990d6be99136d388db57c98b66f055f0b5280ab6ef836deb938860ceae
MD5 defab31a22b13e243eb25df5955634d1
BLAKE2b-256 85c29993f1613dd3cfb8f577fd80dfc398f4810da99af34edfdd63b68bff91f6

See more details on using hashes here.

File details

Details for the file dataclass_to_diagram-0.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for dataclass_to_diagram-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 280c201c48e2552ab63fcb7ed3ad0211ecd4e27048b43170276a491e70608938
MD5 c7e3946713c96fca82e5d1810aca4656
BLAKE2b-256 99d9677e72797a27674c91249dca80a7fca174874dde6f3af4b37703f6c0df2e

See more details on using hashes here.

Supported by

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