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.4.tar.gz (42.8 kB view details)

Uploaded Source

Built Distribution

dataclass_to_diagram-0.0.4-py3-none-any.whl (66.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: dataclass_to_diagram-0.0.4.tar.gz
  • Upload date:
  • Size: 42.8 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.4.tar.gz
Algorithm Hash digest
SHA256 dda1c534703bdb487eed15840cecccd92fde623de0f3198ebb6a375cee6ede8b
MD5 56133c04b48f947b6b77e4e879dd091b
BLAKE2b-256 d57452fedc196177942c226a82959dd99f1c74e225e6434e556e81edb5df5841

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dataclass_to_diagram-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 6a12b54ef425c02ef186de8a1d887584c58d3d4b25bcf95964f581bbb51e025d
MD5 5f594af7d3b37e5cf0db7041dff72557
BLAKE2b-256 c959d92284044ea864acd737c9b51be1271de338c3fdb493bd05ddae0468d59c

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