flowchart TD
    classDef missing stroke-dasharray: 5
    beautifulsoup4["beautifulsoup4\n4.13.4"]
    blurhash["blurhash\n1.1.4"]
    certifi["certifi\n2025.4.26"]
    charset-normalizer["charset-normalizer\n3.4.2"]
    click_0["click\n8.2.1"]
    decorator["decorator\n5.2.1"]
    geotribu["geotribu\n0.34.3"]
    idna["idna\n3.10"]
    imagesize["imagesize\n1.4.1"]
    joblib["joblib\n1.5.1"]
    lunr["lunr\n0.8.0"]
    markdown-it-py["markdown-it-py\n3.0.0"]
    markdownify["markdownify\n1.1.0"]
    mastodon-py["Mastodon.py\n1.8.1"]
    mdurl["mdurl\n0.1.2"]
    nltk["nltk\n3.9.1"]
    orjson["orjson\n3.10.18"]
    packaging["packaging\n25.0"]
    pillow["pillow\n11.2.1"]
    pygments["Pygments\n2.19.1"]
    python-dateutil["python-dateutil\n2.9.0.post0"]
    python-frontmatter["python-frontmatter\n1.1.0"]
    python-magic["python-magic\n0.4.27"]
    pyyaml["PyYAML\n6.0.2"]
    regex["regex\n2024.11.6"]
    requests["requests\n2.32.3"]
    rich-argparse["rich-argparse\n1.7.1"]
    rich["rich\n14.0.0"]
    six["six\n1.17.0"]
    soupsieve["soupsieve\n2.7"]
    tinify["tinify\n1.7.0"]
    tqdm["tqdm\n4.67.1"]
    typing-extensions["typing_extensions\n4.13.2"]
    urllib3["urllib3\n2.4.0"]
    beautifulsoup4 -- ">1.2" --> soupsieve
    beautifulsoup4 -- ">=4.0.0" --> typing-extensions
    geotribu -- ">=0.11,<1.2" --> markdownify
    geotribu -- ">=0.7,<0.9" --> lunr
    geotribu -- ">=1,<1.8" --> rich-argparse
    geotribu -- ">=1,<2" --> python-frontmatter
    geotribu -- ">=1.4,<1.5" --> imagesize
    geotribu -- ">=1.8.1,<1.9" --> mastodon-py
    geotribu -- ">=2.31,<3" --> requests
    geotribu -- ">=20,<26" --> packaging
    geotribu -- ">=3.8,<3.11" --> orjson
    markdown-it-py -- "~=0.1" --> mdurl
    markdownify -- ">=1.15,<2" --> six
    markdownify -- ">=4.9,<5" --> beautifulsoup4
    mastodon-py -- ">=1.1.4" --> blurhash
    mastodon-py -- ">=2.4.2" --> requests
    mastodon-py -- ">=4.0.0" --> decorator
    mastodon-py -- "any" --> python-dateutil
    mastodon-py -- "any" --> python-magic
    mastodon-py -- "any" --> six
    nltk -- ">=2021.8.3" --> regex
    nltk -- "any" --> click_0
    nltk -- "any" --> joblib
    nltk -- "any" --> tqdm
    python-dateutil -- ">=1.5" --> six
    python-frontmatter -- "any" --> pyyaml
    requests -- ">=1.21.1,<3" --> urllib3
    requests -- ">=2,<4" --> charset-normalizer
    requests -- ">=2.5,<4" --> idna
    requests -- ">=2017.4.17" --> certifi
    rich -- ">=2.13.0,<3.0.0" --> pygments
    rich -- ">=2.2.0" --> markdown-it-py
    rich-argparse -- ">=11.0.0" --> rich
    tinify -- ">=2.7.0,<3.0.0" --> requests

    lunr -- any --> nltk