# External Dependencies

Canonical: https://tools.karlquinsland.com/tools/dependencies/
Updated: 2026-01-24


---


# External Dependencies

The general spirit of this site is to have tools that are self-contained so the maintenance burden is low.
However, in some cases, external dependencies are necessary to provide certain functionality without a huge amount of custom code.

At a certain point, a dependency is less of a liability than building and maintaining the functionality yourself.

Below is a list of the various external dependencies used by the tools on this site.

## High level statistics

| Total Tools | Tools Using Dependencies | Tools Without Dependencies |
| ---: | ---: | ---: |
| 22 | 11 | 11 |

### CDN Hosts

| CDN Host | Use Count |
| --- | ---: |
| cdn.jsdelivr.net | 10 |
| cdnjs.cloudflare.com | 2 |

### Html

| Dependency | Version | Use Count |
| --- | --- | ---: |
| js-yaml | 4.1.0 | 4 |
| diff | 5.2.0 | 1 |
| exifr | 7.1.3 | 1 |
| force-graph | 1.51.4 | 1 |
| json5 | 2.2.3 | 1 |
| jszip | 3.10.1 | 1 |
| mermaid | 10 | 1 |
| viz.js | 2.1.2 | 1 |

### Python

| Dependency | Version | Use Count |
| --- | --- | ---: |
| click | >=8.1 | 2 |
| pydot | >=2.0 | 1 |
| pyyaml | >=6.0 | 1 |
| ruamel.yaml | >=0.18 | 1 |
| structlog | >=24 | 1 |
| structlog | >=24.0 | 1 |

## Dependencies by Tool

Only tools with external dependencies are listed here.



### Html

#### [3MF Inspector](https://tools.karlquinsland.com/tools/html/3mf-inspector/index.md)

This tool relies on 1 dependencies.

| # | Library | Version | Via |
| ---: | --- | --- | --- |
| 1 | jszip | 3.10.1 | [cdn.jsdelivr.net](https://cdn.jsdelivr.net/npm/jszip@3.10.1/dist/jszip.min.js) |

#### [EXIF Inspector](https://tools.karlquinsland.com/tools/html/exif-inspector/index.md)

This tool relies on 1 dependencies.

| # | Library | Version | Via |
| ---: | --- | --- | --- |
| 1 | exifr | 7.1.3 | [cdn.jsdelivr.net](https://cdn.jsdelivr.net/npm/exifr@7.1.3/dist/full.umd.js) |

#### [GitHub Actions Spider](https://tools.karlquinsland.com/tools/html/github-actions-spider/index.md)

This tool relies on 1 dependencies.

| # | Library | Version | Via |
| ---: | --- | --- | --- |
| 1 | js-yaml | 4.1.0 | [cdn.jsdelivr.net](https://cdn.jsdelivr.net/npm/js-yaml@4.1.0/dist/js-yaml.min.js) |

#### [GitHub Repo File Spider](https://tools.karlquinsland.com/tools/html/github-repo-file-spider/index.md)

This tool relies on 1 dependencies.

| # | Library | Version | Via |
| ---: | --- | --- | --- |
| 1 | js-yaml | 4.1.0 | [cdn.jsdelivr.net](https://cdn.jsdelivr.net/npm/js-yaml@4.1.0/dist/js-yaml.min.js) |

#### [Helm Chart Discovery](https://tools.karlquinsland.com/tools/html/helm-chart-discovery/index.md)

This tool relies on 1 dependencies.

| # | Library | Version | Via |
| ---: | --- | --- | --- |
| 1 | js-yaml | 4.1.0 | [cdn.jsdelivr.net](https://cdn.jsdelivr.net/npm/js-yaml@4.1.0/dist/js-yaml.min.js) |

#### [Makefile Dependency Graph](https://tools.karlquinsland.com/tools/html/makefile-dependency-graph/index.md)

This tool relies on 3 dependencies.

| # | Library | Version | Via |
| ---: | --- | --- | --- |
| 1 | viz.js | 2.1.2 | [cdnjs.cloudflare.com](https://cdnjs.cloudflare.com/ajax/libs/viz.js/2.1.2/viz.js) |
| 2 | viz.js | 2.1.2 | [cdnjs.cloudflare.com](https://cdnjs.cloudflare.com/ajax/libs/viz.js/2.1.2/full.render.js) |
| 3 | mermaid | 10 | [cdn.jsdelivr.net](https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.min.js) |

#### [Salt State Graph](https://tools.karlquinsland.com/tools/html/salt-state-graph/index.md)

This tool relies on 1 dependencies.

| # | Library | Version | Via |
| ---: | --- | --- | --- |
| 1 | force-graph | 1.51.4 | [cdn.jsdelivr.net](https://cdn.jsdelivr.net/npm/force-graph@1.51.4/dist/force-graph.min.js) |

#### [Sync Conflict Triage](https://tools.karlquinsland.com/tools/html/syncthing-conflict-triage/index.md)

This tool relies on 1 dependencies.

| # | Library | Version | Via |
| ---: | --- | --- | --- |
| 1 | diff | 5.2.0 | [cdn.jsdelivr.net](https://cdn.jsdelivr.net/npm/diff@5.2.0/dist/diff.min.js) |

#### [YAML ↔ JSON Convert & Compare](https://tools.karlquinsland.com/tools/html/yaml-json-convert-compare/index.md)

This tool relies on 2 dependencies.

| # | Library | Version | Via |
| ---: | --- | --- | --- |
| 1 | js-yaml | 4.1.0 | [cdn.jsdelivr.net](https://cdn.jsdelivr.net/npm/js-yaml@4.1.0/dist/js-yaml.min.js) |
| 2 | json5 | 2.2.3 | [cdn.jsdelivr.net](https://cdn.jsdelivr.net/npm/json5@2.2.3/dist/index.min.js) |

### Python

#### [GHA Tree Builder](https://tools.karlquinsland.com/tools/python/gha-tree-builder/index.md)

This tool relies on 4 dependencies.

| # | Library | Version | Via |
| ---: | --- | --- | --- |
| 1 | click | >=8.1 | - |
| 2 | structlog | >=24.0 | - |
| 3 | pyyaml | >=6.0 | - |
| 4 | pydot | >=2.0 | - |

#### [Obsidian Icon Folder Migrator](https://tools.karlquinsland.com/tools/python/obsidian-icon-folder-migrator/index.md)

This tool relies on 3 dependencies.

| # | Library | Version | Via |
| ---: | --- | --- | --- |
| 1 | click | >=8.1 | - |
| 2 | ruamel.yaml | >=0.18 | - |
| 3 | structlog | >=24 | - |


