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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: dataclass_to_diagram-0.0.5.tar.gz
  • Upload date:
  • Size: 42.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.2 CPython/3.10.6 Linux/5.15.0-58-generic

File hashes

Hashes for dataclass_to_diagram-0.0.5.tar.gz
Algorithm Hash digest
SHA256 d7046e98af43cad0544c9e8f108816c7d86d4a1486ae740a63fdf6a704bfa976
MD5 cb0f1cc39b13160a98996c5508038da0
BLAKE2b-256 9b77166b59299c2076ed202028f397cc2808300d580daf343214bd37b327efcb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dataclass_to_diagram-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 c2df7e3f9520e65d24384152ae7443ea0ae73d195f90a72ed3d39f3db349bd19
MD5 f6452808ab651ff228e29410e6ca106e
BLAKE2b-256 497a5bd02ade41f318162a104740d73a606d97d66cd0d5b2a41cfd676dc27900

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