Öffentliches Register
Software-GesundheitsberichtSchema 0.27.0 · Metriken 1.13.0 · 2026-07-25 07:21 UTC

linuxserver / Heimdall

An Application dashboard and launcher

PHPMIT★ 9.279 Sterne⑂ 614 Forksseit Jan. 2018Auf GitHub ansehen ↗

linuxserver/Heimdall erreicht einen Gesundheitsindex von 73 von 100 und liegt damit im Bereich Gut. Am stärksten schneidet es bei Community & Adoption (90/100) ab, am schwächsten bei AI Readiness (50/100). Zuletzt vor 14 Tagen aktualisiert. Ein einzelner Mitwirkender trägt den Großteil der jüngsten Arbeit.

73
gesamt / 100
Gut

Software-Gesundheitsindex

Metriken werden auf einer Skala von 1–100 in gewichtete Kategorien gruppiert. Der Gesamtwert beginnt als ihr Mittel; sobald öffentliche Evidenz die Richtlinie für Hochrisikojurisdiktionen auslöst, wird die Bewertung angepasst und erhält die Obergrenze 49 (Gefährdet). AI Readiness liegt außerhalb.

73
Exzellent85-100Vorbildlich; erfüllt im Wesentlichen alle geprüften Kriterien
Gut70-84Gesund; geringfügige Lücken
Mittel50-69Akzeptabel mit deutlichen Lücken; Überprüfung empfohlen
Gefährdet30-49Erhebliche Schwächen; eine Übernahme erfordert Vorsicht
Kritisch1-29Schwerwiegende Probleme (aufgegeben, nur ein Maintainer, keine Hygiene)
VitalitätCommunity &VerbreitungNachhaltigkeit &GovernanceEngineering-QualitätSicherheitAI Readiness

Bewertungsprofil

Jede Achse ist eine Kategorie. Die Form zählt mehr als der Durchschnitt — ein gesundes Projekt füllt die gesamte Fläche, während ein Profil aus Spitzen und Kratern bedeutet, dass Stärke in einer Dimension Risiken in einer anderen verdeckt.

Eigentümerschaft

LinuxServer.ioOrganisation
6.697 Follower319 öffentliche Reposseit Mai 2015

Dieses Repository wird von einer Organisation getragen — geteilte, rechenschaftspflichtige Trägerschaft, die jeden einzelnen Maintainer überdauern kann.

Paket-Ökosysteme

RegistryPaketVersionDownloads / MonatVersionenZuletzt veröffentlichtTags
Packagistlaravel/laravelverweist auf ein anderes Repo — nicht bewertetv13.8.0654.305264vor 60 Tagenframeworklaravel

Metriken nach Kategorie

Vitalität

Lebt das Projekt — wird Code geschrieben und werden Releases ausgeliefert?

75Gut · 22 % des Gesamtindex
Wie die Bewertung erfolgt
28.8/36Push-Aktualität — letzter Push vor 14 Tagen
6.9/36Commit-Rhythmus — 10/52 Wochen mit Commits
17/18Commit-Volumen — 77 Commits im letzten Jahr
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10
Verwendete Eingangsdaten
commits_last_year77
human_commit_share0,99
days_since_last_push14
active_weeks_last_year10
Wie die Bewertung erfolgt
27/27Liefert Releases aus — 88 Releases veröffentlicht
36/36Release-Aktualität — letztes Release vor 15 Tagen
19.8/27Release-Rhythmus — ein Release etwa alle 67,9 Tage
0/10OpenSSF Scorecard: Signed-Releases — keine Daten
Verwendete Eingangsdaten
releases_count88
latest_release_tagv2.8.1
releases_from_tagsnein
days_since_latest_release15
mean_days_between_releases67,9
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): OpenSSF Scorecard: Signed-Releases. Die verbleibenden Gewichte wurden renormalisiert.

Community & Verbreitung

Hat das Projekt Nutzer, Downloads, Aufmerksamkeit und ein einladendes Umfeld für Beitragende?

90Exzellent · 18 % des Gesamtindex
Wie die Bewertung erfolgt
60/60Stars — 9.279 Stars
23.2/25Forks — 614 Forks
10.7/15Watcher — 84 Watcher
Verwendete Eingangsdaten
forks614
stars9.279
watchers84
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Wie die Bewertung erfolgt
22.5/22.5README
22.5/22.5Lizenz — anerkannte Lizenz (MIT)
18/18CONTRIBUTING-Leitfaden
13.5/13.5Verhaltenskodex
0/7.2Issue-Vorlage
0/6.3PR-Vorlage
Verwendete Eingangsdaten
has_readmeja
has_licenseja
has_contributingja
has_issue_templatenein
has_code_of_conductja
has_pull_request_templatenein

Nachhaltigkeit & Governance

Überdauert das Projekt die Menschen, die es tragen — Bus-Faktor, Reaktionsfähigkeit, Trägerschaft und Paketpflege?

66Mittel · 24 % des Gesamtindex
Wie die Bewertung erfolgt
9/54Bus-Faktor — 1 Beitragende decken die Hälfte aller Commits ab
11.2/22.5Commit-Verteilung — wichtigste beitragende Person verfasste 50 % der Commits
13.5/13.5Breite der Beitragenden — 80 Beitragende
10/10OpenSSF Scorecard: Contributors — project has 19 contributing companies or organizations
Verwendete Eingangsdaten
bus_factor1
contributors_sampled80
top_contributor_share0,503
Wie die Bewertung erfolgt
46.8/46.8Issue-Lösungsquote — 100 % der Issues geschlossen
30.5/38.3PR-Annahme — 293/367 entschiedene PRs gemergt
0/15OpenSSF Scorecard: Code-Review — Found 1/13 approved changesets -- score normalized to 0
Verwendete Eingangsdaten
merged_prs293
open_issues0
closed_issues924
issue_closed_ratio1
closed_unmerged_prs74
Wie die Bewertung erfolgt
30/30Organisatorische Trägerschaft — im Besitz einer Organisation
0/20Verifizierte Domain
25/25Reichweite des Inhabers — 6.697 Follower von linuxserver
25/25Kontohistorie — 319 öffentliche Repos, Kontoalter ca. 11 Jahre
Verwendete Eingangsdaten
followers6.697
owner_typeOrganization
is_verified
owner_loginlinuxserver
public_repos319
account_age_days4.095

Engineering-Qualität

Sind grundlegende Engineering- und Dokumentationspraktiken vorhanden?

78Gut · 20 % des Gesamtindex
Wie die Bewertung erfolgt
24/24CI-Workflows — 6 Workflow(s)
24/24Tests vorhanden
16/16Linter-Konfiguration — .eslintrc, .php-cs-fixer.dist.php, .php-cs-fixer.php, phpcs.xml, phpstan.neon
0/9.6Pre-Commit-Hooks
6.4/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 12 out of 12 merged PRs checked by a CI test -- score normalized to 10
Verwendete Eingangsdaten
has_cija
has_testsja
has_editorconfigja
has_linter_configja
has_precommit_confignein
Wie die Bewertung erfolgt
30/30README
0/25Dokumentationsverzeichnis
0/15Dokumentations-/Homepage-Site
10/10Repository-Beschreibung
10/10Topics — 20 Topics
10/10Wiki
Verwendete Eingangsdaten
topicsheimdall, nzbget, sabnzbd, nginx, dashboard, plex, application-dashboard, bookmark, emby, startpage, server, htpc, sonarr, radarr, homepage, landingpage, landing, couchpotato, organizr, muximux
has_wikija
homepage
has_readmeja
has_docs_dirnein
has_descriptionja

Sicherheit

Sind die sichtbaren Sicherheits- und Lieferkettenpraktiken belastbar, ohne ungeklärte Exposition gegenüber Hochrisikojurisdiktionen?

55Mittel · 16 % des Gesamtindex

Sicherheitslage

49Gefährdet
Wie die Bewertung erfolgt
6.8/7.5Binary-Artifacts — binaries present in source code
0/7.5Branch-Protection — keine Daten
2.5/2.5CI-Tests — 12 out of 12 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 1/13 approved changesets -- score normalized to 0
2.5/2.5Contributors — project has 19 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
7.5/7.5Dependency-Update-Tool — update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Lizenz — license file detected
7.5/7.5Maintained — 30 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10
0/5Packaging — keine Daten
0.5/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 1
0/5SAST — SAST tool is not run on all commits -- score normalized to 0
2/5Security-Policy — security policy file detected
0/7.5Signed-Releases — keine Daten
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
0/7.5Vulnerabilities — 42 existing vulnerabilities detected
Verwendete Eingangsdaten
sourceopenssf_scorecard
checks_evaluated15
scorecard_versionv5.5.0
checks_inconclusive3
scorecard_aggregate4,9
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): branch_protection, packaging, signed_releases. Die verbleibenden Gewichte wurden renormalisiert.
Wie die Bewertung erfolgt
18.5/35Direkte Abhängigkeiten ohne bekannte Advisories — 1 betroffen: guzzlehttp/guzzle 7.13.3 (moderate 5.9)
0/25Indirekte Abhängigkeiten ohne bekannte Advisories — transitive Menge in diesem Bereich nicht von Entwicklungs- und Test-Abhängigkeiten trennbar
40/40Keine offenen Advisories — kein Advisory ist länger als 90 Tage öffentlich
Verwendete Eingangsdaten
sourceosv
advisories22
affected_packages12
assessed_packages1.015
unassessed_packages0
affected_by_severityhigh 6, moderate 4, low 2
direct_affected_packages1
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Indirekte Abhängigkeiten ohne bekannte Advisories. Die verbleibenden Gewichte wurden renormalisiert. 1015 aufgelöste Abhängigkeiten wurden mit OSV abgeglichen. Dieses Repository veröffentlicht kein Paket, das der Index auflöst; bewertet wurde daher der Abhängigkeitsgraph des Repositorys. Dieser Graph vermischt Entwicklungs- und Test-Pins mit ausgelieferten Abhängigkeiten, daher werden nur die deklarierten Laufzeit-Abhängigkeiten bewertet; transitive Befunde werden als Kontext ausgewiesen und fließen nicht in die Bewertung ein. Erreichbarkeit wird nicht analysiert.

AI Readiness

Wie gut ist das Repository dafür ausgestattet, mit KI-Coding-Agenten entwickelt und gepflegt zu werden? Ein unabhängiges, experimentelles Badge — Gewicht 0,0, es wird eigenständig ausgewiesen und verändert den Gesamt-Gesundheitswert nicht.

50Mittel · 0 % des Gesamtindex
Wie die Bewertung erfolgt
0/45Agentenanweisungen — keine CLAUDE.md / AGENTS.md / Editor-Regeln
0/15Maschinenlesbare Doku (llms.txt)
36.6/40Lesbare Commit-Historie — 68 von 99 menschlichen Commits benennen ihre Absicht (strukturierter Betreff oder erläuternder Text)
Verwendete Eingangsdaten
has_llms_txtnein
legible_history_share0,687
agent_instruction_files
agent_instruction_max_bytes
Wie die Bewertung erfolgt
18/18Bootstrap mit einem Befehl — vendor/mockery/mockery/docs/Makefile
22/22Automatisierte Tests
11/11Lint-/Format-Konfiguration — .eslintrc, .php-cs-fixer.dist.php, .php-cs-fixer.php, phpcs.xml, phpstan.neon
0/11Statische Typprüfung
10/10Reproduzierbare Umgebung — Dockerfile, lockfile
0/10Belegte Agentenpraxis — keine von Agenten verfassten Commits unter den letzten 100
0/8Automatisierte Wartung — keine automatisierten Abhängigkeits-Updates beobachtet
1/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 1
Verwendete Eingangsdaten
has_nixnein
has_testsja
lockfilescomposer.lock, package-lock.json
has_dockerfileja
typed_languagenein
bootstrap_filesvendor/mockery/mockery/docs/Makefile
has_devcontainernein
has_linter_configja
typecheck_configs
agent_commit_share0
toolchain_manifests
dependency_bot_commit_share0
Wie die Bewertung erfolgt
0/45Typprüfbarer Code — PHP ohne Typprüfungs-Konfiguration
53.6/55Handhabbare Dateigrößen — 7/268 Quelldateien über 60 KB
Verwendete Eingangsdaten
primary_languagePHP
largest_source_bytes905.742
source_files_sampled268
oversized_source_files7
Wie die Bewertung erfolgt
0/40API-Schema (OpenAPI/GraphQL/proto)
0/20MCP-Server
40/40Lauffähige Beispiele — cookbook
Verwendete Eingangsdaten
example_dirscookbook
has_mcp_signalnein
api_schema_files

Eckdaten

9.279GitHub-Sterne
80Mitwirkende
77Commits, letzte 12 Monate
14Tage seit letztem Push
88Releases
1Bus-Faktor
0offene Issues
npm, PackagistPaket-Ökosysteme

Warnungen zur Datenerhebung

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token
  • packagist package 'laravel/laravel' points at a different repository (https://github.com/laravel/laravel); excluded from ecosystem scoring

Weitere Details

Stern- und Fork-Verlauf 0 ★ / 614 ⇿
0Sterne
614Forks
87Releases

Wann jeder Stern und Fork hinzugefügt wurde, von GitHub erfasst und nach Tagen gruppiert. Das kumulierte Wachstum steht direkt über den täglichen Zugängen, aus denen es besteht, sodass beide gegeneinander lesbar sind: stetiger organischer Zuwachs sieht ganz anders aus als ein abrupter, kurzlebiger Ausschlag. Wo dieser Unterschied messbar ist, wird er als Wachstumsauthentizität ausgewiesen.

012525037550062560672018-022022-042026-07
Major 1Minor 11Patch 72

Jeder Punkt umfasst 8 Tage.

OpenSSF Scorecard 4.9 / 10
4.9Gesamtwert

Unabhängige, werkzeugneutrale Sicherheitsbewertung durch das quelloffene OpenSSF Scorecard. Jede Prüfung honoriert eine Sicherheits-Praxis, nicht das Werkzeug eines bestimmten Anbieters. Prüfungen, die Scorecard nicht ermitteln konnte, sind mit k. A. markiert und vom Sicherheitswert ausgeschlossen (nie als null gezählt).Scorecard v5.5.0 · 2026-07-25 07:21 UTC

9Binary-Artifactsbinaries present in source code
k. A.Branch-Protectioninternal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
10CI-Tests12 out of 12 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 1/13 approved changesets -- score normalized to 0
10Contributorsproject has 19 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10
k. A.Packagingpackaging workflow not detected
1Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 1
0SASTSAST tool is not run on all commits -- score normalized to 0
4Security-Policysecurity policy file detected
k. A.Signed-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
0Vulnerabilities42 existing vulnerabilities detected
Direkte Abhängigkeiten 14
RegistryPaketVersionsvorgabeManifest
Packagistenshrined/svg-sanitize^0.22.0composer.json
Packagistgraham-campbell/github^13.0composer.json
Packagistguzzlehttp/guzzle^7.8composer.json
Packagistlaravel/framework^13.0composer.json
Packagistlaravel/tinker^3.0composer.json
Packagistlaravel/ui^4.4composer.json
Packagistleague/flysystem-aws-s3-v3^3.0composer.json
Packagistnunomaduro/collision^8.0composer.json
Packagistphrity/websocket^3.6composer.json
Packagistspatie/laravel-html^3.11composer.json
Packagistspatie/laravel-ignition^2.4composer.json
Packagistsymfony/yaml^7.0composer.json
npmselect2~4.0.13package.json
npmsortablejs^1.15.0package.json
Alle Abhängigkeiten 1.015

Vollständig aufgelöster Abhängigkeitssatz aus dem GitHub-Abhängigkeitsgraphen: 14 direkte und 1.001 indirekte (transitive) Pakete. Die transitive Hülle ist vollständig, wenn das Repository eine Lockfile eincheckt.

RegistryPaketVersionBeziehung
npmselect24.0.13direkt
npmsortablejs1.15.6direkt
Packagistenshrined/svg-sanitize0.22.0direkt
Packagistgraham-campbell/github13.1.1direkt
Packagistguzzlehttp/guzzle7.13.3direkt
Packagistlaravel/framework13.19.0direkt
Packagistlaravel/tinker3.0.2direkt
Packagistlaravel/ui4.6.3direkt
Packagistleague/flysystem-aws-s3-v33.35.2direkt
Packagistnunomaduro/collision8.9.4direkt
Packagistphrity/websocket3.7.3direkt
Packagistspatie/laravel-html3.13.0direkt
Packagistspatie/laravel-ignition2.12.0direkt
Packagistsymfony/yaml7.4.14direkt
npm@babel/code-frame7.29.7indirekt
npm@babel/compat-data7.29.7indirekt
npm@babel/core7.29.7indirekt
npm@babel/generator7.29.7indirekt
npm@babel/helper-annotate-as-pure7.27.3indirekt
npm@babel/helper-compilation-targets7.29.7indirekt
npm@babel/helper-create-class-features-plugin7.27.1indirekt
npm@babel/helper-create-regexp-features-plugin7.27.1indirekt
npm@babel/helper-define-polyfill-provider0.6.5indirekt
npm@babel/helper-globals7.29.7indirekt
npm@babel/helper-member-expression-to-functions7.27.1indirekt
npm@babel/helper-module-imports7.29.7indirekt
npm@babel/helper-module-transforms7.29.7indirekt
npm@babel/helper-optimise-call-expression7.27.1indirekt
npm@babel/helper-plugin-utils7.29.7indirekt
npm@babel/helper-remap-async-to-generator7.27.1indirekt
npm@babel/helper-replace-supers7.27.1indirekt
npm@babel/helper-skip-transparent-expression-wrappers7.27.1indirekt
npm@babel/helper-string-parser7.29.7indirekt
npm@babel/helper-validator-identifier7.29.7indirekt
npm@babel/helper-validator-option7.29.7indirekt
npm@babel/helper-wrap-function7.27.1indirekt
npm@babel/helpers7.29.7indirekt
npm@babel/parser7.29.7indirekt
npm@babel/plugin-bugfix-firefox-class-in-computed-class-key7.27.1indirekt
npm@babel/plugin-bugfix-safari-class-field-initializer-scope7.27.1indirekt
npm@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression7.27.1indirekt
npm@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining7.27.1indirekt
npm@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly7.27.1indirekt
npm@babel/plugin-proposal-object-rest-spread7.20.7indirekt
npm@babel/plugin-proposal-private-property-in-object7.21.0-placeholder-for-preset-env.2indirekt
npm@babel/plugin-syntax-dynamic-import7.8.3indirekt
npm@babel/plugin-syntax-import-assertions7.27.1indirekt
npm@babel/plugin-syntax-import-attributes7.27.1indirekt
npm@babel/plugin-syntax-object-rest-spread7.8.3indirekt
npm@babel/plugin-syntax-unicode-sets-regex7.18.6indirekt
npm@babel/plugin-transform-arrow-functions7.27.1indirekt
npm@babel/plugin-transform-async-generator-functions7.28.0indirekt
npm@babel/plugin-transform-async-to-generator7.27.1indirekt
npm@babel/plugin-transform-block-scoped-functions7.27.1indirekt
npm@babel/plugin-transform-block-scoping7.28.0indirekt
npm@babel/plugin-transform-class-properties7.27.1indirekt
npm@babel/plugin-transform-class-static-block7.27.1indirekt
npm@babel/plugin-transform-classes7.28.0indirekt
npm@babel/plugin-transform-computed-properties7.27.1indirekt
npm@babel/plugin-transform-destructuring7.28.0indirekt
npm@babel/plugin-transform-dotall-regex7.27.1indirekt
npm@babel/plugin-transform-duplicate-keys7.27.1indirekt
npm@babel/plugin-transform-duplicate-named-capturing-groups-regex7.27.1indirekt
npm@babel/plugin-transform-dynamic-import7.27.1indirekt
npm@babel/plugin-transform-explicit-resource-management7.28.0indirekt
npm@babel/plugin-transform-exponentiation-operator7.27.1indirekt
npm@babel/plugin-transform-export-namespace-from7.27.1indirekt
npm@babel/plugin-transform-for-of7.27.1indirekt
npm@babel/plugin-transform-function-name7.27.1indirekt
npm@babel/plugin-transform-json-strings7.27.1indirekt
npm@babel/plugin-transform-literals7.27.1indirekt
npm@babel/plugin-transform-logical-assignment-operators7.27.1indirekt
npm@babel/plugin-transform-member-expression-literals7.27.1indirekt
npm@babel/plugin-transform-modules-amd7.27.1indirekt
npm@babel/plugin-transform-modules-commonjs7.27.1indirekt
npm@babel/plugin-transform-modules-systemjs7.29.7indirekt
npm@babel/plugin-transform-modules-umd7.27.1indirekt
npm@babel/plugin-transform-named-capturing-groups-regex7.27.1indirekt
npm@babel/plugin-transform-new-target7.27.1indirekt
npm@babel/plugin-transform-nullish-coalescing-operator7.27.1indirekt
npm@babel/plugin-transform-numeric-separator7.27.1indirekt
npm@babel/plugin-transform-object-rest-spread7.28.0indirekt
npm@babel/plugin-transform-object-super7.27.1indirekt
npm@babel/plugin-transform-optional-catch-binding7.27.1indirekt
npm@babel/plugin-transform-optional-chaining7.27.1indirekt
npm@babel/plugin-transform-parameters7.27.7indirekt
npm@babel/plugin-transform-private-methods7.27.1indirekt
npm@babel/plugin-transform-private-property-in-object7.27.1indirekt
npm@babel/plugin-transform-property-literals7.27.1indirekt
npm@babel/plugin-transform-regenerator7.28.1indirekt
npm@babel/plugin-transform-regexp-modifiers7.27.1indirekt
npm@babel/plugin-transform-reserved-words7.27.1indirekt
npm@babel/plugin-transform-runtime7.28.0indirekt
npm@babel/plugin-transform-shorthand-properties7.27.1indirekt
npm@babel/plugin-transform-spread7.27.1indirekt
npm@babel/plugin-transform-sticky-regex7.27.1indirekt
npm@babel/plugin-transform-template-literals7.27.1indirekt
npm@babel/plugin-transform-typeof-symbol7.27.1indirekt
npm@babel/plugin-transform-unicode-escapes7.27.1indirekt
npm@babel/plugin-transform-unicode-property-regex7.27.1indirekt
npm@babel/plugin-transform-unicode-regex7.27.1indirekt
npm@babel/plugin-transform-unicode-sets-regex7.27.1indirekt
npm@babel/preset-env7.28.0indirekt
npm@babel/preset-modules0.1.6-no-external-pluginsindirekt
npm@babel/runtime7.27.6indirekt
npm@babel/template7.29.7indirekt
npm@babel/traverse7.29.7indirekt
npm@babel/types7.29.7indirekt
npm@colors/colors1.5.0indirekt
npm@discoveryjs/json-ext0.5.7indirekt
npm@discoveryjs/json-ext0.6.3indirekt
npm@eslint-community/eslint-utils4.7.0indirekt
npm@eslint-community/regexpp4.12.1indirekt
npm@eslint/eslintrc2.1.4indirekt
npm@eslint/js8.57.1indirekt
npm@humanwhocodes/config-array0.13.0indirekt
npm@humanwhocodes/module-importer1.0.1indirekt
npm@humanwhocodes/object-schema2.0.3indirekt
npm@jridgewell/gen-mapping0.3.12indirekt
npm@jridgewell/remapping2.3.5indirekt
npm@jridgewell/resolve-uri3.1.2indirekt
npm@jridgewell/source-map0.3.10indirekt
npm@jridgewell/sourcemap-codec1.5.4indirekt
npm@jridgewell/trace-mapping0.3.29indirekt
npm@leichtgewicht/ip-codec2.0.5indirekt
npm@nodelib/fs.scandir2.1.5indirekt
npm@nodelib/fs.stat2.0.5indirekt
npm@nodelib/fs.walk1.2.8indirekt
npm@parcel/watcher2.5.1indirekt
npm@parcel/watcher-android-arm642.5.1indirekt
npm@parcel/watcher-darwin-arm642.5.1indirekt
npm@parcel/watcher-darwin-x642.5.1indirekt
npm@parcel/watcher-freebsd-x642.5.1indirekt
npm@parcel/watcher-linux-arm-glibc2.5.1indirekt
npm@parcel/watcher-linux-arm-musl2.5.1indirekt
npm@parcel/watcher-linux-arm64-glibc2.5.1indirekt
npm@parcel/watcher-linux-arm64-musl2.5.1indirekt
npm@parcel/watcher-linux-x64-glibc2.5.1indirekt
npm@parcel/watcher-linux-x64-musl2.5.1indirekt
npm@parcel/watcher-win32-arm642.5.1indirekt
npm@parcel/watcher-win32-ia322.5.1indirekt
npm@parcel/watcher-win32-x642.5.1indirekt
npm@rtsao/scc1.1.0indirekt
npm@types/babel__core7.20.5indirekt
npm@types/babel__generator7.27.0indirekt
npm@types/babel__template7.4.4indirekt
npm@types/babel__traverse7.20.7indirekt
npm@types/body-parser1.19.6indirekt
npm@types/bonjour3.5.13indirekt
npm@types/clean-css4.2.11indirekt
npm@types/connect3.4.38indirekt
npm@types/connect-history-api-fallback1.5.4indirekt
npm@types/eslint9.6.1indirekt
npm@types/eslint-scope3.7.7indirekt
npm@types/estree1.0.8indirekt
npm@types/express4.17.23indirekt
npm@types/express-serve-static-core4.19.6indirekt
npm@types/express-serve-static-core5.0.7indirekt
npm@types/glob7.2.0indirekt
npm@types/http-errors2.0.5indirekt
npm@types/http-proxy1.17.16indirekt
npm@types/imagemin9.0.1indirekt
npm@types/imagemin-gifsicle7.0.4indirekt
npm@types/imagemin-mozjpeg8.0.4indirekt
npm@types/imagemin-optipng5.2.4indirekt
npm@types/imagemin-svgo8.0.1indirekt
npm@types/json-schema7.0.15indirekt
npm@types/json50.0.29indirekt
npm@types/mime1.3.5indirekt
npm@types/minimatch6.0.0indirekt
npm@types/node24.0.13indirekt
npm@types/node-forge1.3.13indirekt
npm@types/parse-json4.0.2indirekt
npm@types/qs6.14.0indirekt
npm@types/range-parser1.2.7indirekt
npm@types/retry0.12.0indirekt
npm@types/send0.17.5indirekt
npm@types/serve-index1.9.4indirekt
npm@types/serve-static1.15.8indirekt
npm@types/sockjs0.3.36indirekt
npm@types/svgo1.3.6indirekt
npm@types/ws8.18.1indirekt
npm@ungap/structured-clone1.3.0indirekt
npm@webassemblyjs/ast1.14.1indirekt
npm@webassemblyjs/floating-point-hex-parser1.13.2indirekt
npm@webassemblyjs/helper-api-error1.13.2indirekt
npm@webassemblyjs/helper-buffer1.14.1indirekt
npm@webassemblyjs/helper-numbers1.13.2indirekt
npm@webassemblyjs/helper-wasm-bytecode1.13.2indirekt
npm@webassemblyjs/helper-wasm-section1.14.1indirekt
npm@webassemblyjs/ieee7541.13.2indirekt
npm@webassemblyjs/leb1281.13.2indirekt
npm@webassemblyjs/utf81.13.2indirekt
npm@webassemblyjs/wasm-edit1.14.1indirekt
npm@webassemblyjs/wasm-gen1.14.1indirekt
npm@webassemblyjs/wasm-opt1.14.1indirekt
npm@webassemblyjs/wasm-parser1.14.1indirekt
npm@webassemblyjs/wast-printer1.14.1indirekt
npm@webpack-cli/configtest1.2.0indirekt
npm@webpack-cli/configtest3.0.1indirekt
npm@webpack-cli/info1.5.0indirekt
npm@webpack-cli/info3.0.1indirekt
npm@webpack-cli/serve1.7.0indirekt
npm@webpack-cli/serve3.0.1indirekt
npm@xtuc/ieee7541.2.0indirekt
npm@xtuc/long4.2.2indirekt
npmaccepts1.3.8indirekt
npmacorn8.15.0indirekt
npmacorn-import-phases1.0.3indirekt
npmacorn-jsx5.3.2indirekt
npmajv6.12.6indirekt
npmajv8.17.1indirekt
npmajv-formats2.1.1indirekt
npmajv-keywords3.5.2indirekt
npmajv-keywords5.1.0indirekt
npmansi-html-community0.0.8indirekt
npmansi-regex5.0.1indirekt
npmansi-styles4.3.0indirekt
npmanymatch3.1.3indirekt
npmargparse2.0.1indirekt
npmarray-buffer-byte-length1.0.2indirekt
npmarray-flatten1.1.1indirekt
npmarray-includes3.1.9indirekt
npmarray-union2.1.0indirekt
npmarray.prototype.findlastindex1.2.6indirekt
npmarray.prototype.flat1.3.3indirekt
npmarray.prototype.flatmap1.3.3indirekt
npmarraybuffer.prototype.slice1.0.4indirekt
npmasn1.js4.10.1indirekt
npmassert1.5.1indirekt
npmasync-function1.0.0indirekt
npmautoprefixer10.4.21indirekt
npmavailable-typed-arrays1.0.7indirekt
npmbabel-loader8.4.1indirekt
npmbabel-plugin-polyfill-corejs20.4.14indirekt
npmbabel-plugin-polyfill-corejs30.13.0indirekt
npmbabel-plugin-polyfill-regenerator0.6.5indirekt
npmbalanced-match1.0.2indirekt
npmbase64-js1.5.1indirekt
npmbatch0.6.1indirekt
npmbig.js5.2.2indirekt
npmbinary-extensions2.3.0indirekt
npmbn.js5.2.4indirekt
npmbody-parser1.20.3indirekt
npmbonjour-service1.3.0indirekt
npmboolbase1.0.0indirekt
npmbootstrap-sass3.4.3indirekt
npmbrace-expansion1.1.16indirekt
npmbraces3.0.3indirekt
npmbrorand1.1.0indirekt
npmbrowserify-aes1.2.0indirekt
npmbrowserify-cipher1.0.1indirekt
npmbrowserify-des1.0.2indirekt
npmbrowserify-rsa4.1.1indirekt
npmbrowserify-sign4.2.3indirekt
npmbrowserify-zlib0.2.0indirekt
npmbrowserslist4.25.1indirekt
npmbuffer4.9.2indirekt
npmbuffer-from1.1.2indirekt
npmbuffer-xor1.0.3indirekt
npmbuiltin-status-codes3.0.0indirekt
npmbytes3.1.2indirekt
npmcall-bind1.0.8indirekt
npmcall-bind-apply-helpers1.0.2indirekt
npmcall-bound1.0.4indirekt
npmcallsites3.1.0indirekt
npmcamel-case4.1.2indirekt
npmcaniuse-api3.0.0indirekt
npmcaniuse-lite1.0.30001727indirekt
npmchalk4.1.2indirekt
npmcharenc0.0.2indirekt
npmchokidar3.6.0indirekt
npmchokidar4.0.3indirekt
npmchrome-trace-event1.0.4indirekt
npmcipher-base1.0.6indirekt
npmclean-css4.2.4indirekt
npmclean-css5.3.3indirekt
npmcli-table30.6.5indirekt
npmcliui8.0.1indirekt
npmclone-deep4.0.1indirekt
npmcollect.js4.36.1indirekt
npmcolor-convert2.0.1indirekt
npmcolor-name1.1.4indirekt
npmcolord2.9.3indirekt
npmcolorette2.0.20indirekt
npmcommander12.1.0indirekt
npmcommander2.20.3indirekt
npmcommander4.1.1indirekt
npmcommander7.2.0indirekt
npmcommondir1.0.1indirekt
npmcompressible2.0.18indirekt
npmcompression1.8.0indirekt
npmconcat1.0.3indirekt
npmconcat-map0.0.1indirekt
npmconfusing-browser-globals1.0.11indirekt
npmconnect-history-api-fallback2.0.0indirekt
npmconsola2.15.3indirekt
npmconsole-browserify1.2.0indirekt
npmconstants-browserify1.0.0indirekt
npmcontent-disposition0.5.4indirekt
npmcontent-type1.0.5indirekt
npmconvert-source-map2.0.0indirekt
npmcookie0.7.1indirekt
npmcookie-signature1.0.6indirekt
npmcore-js-compat3.44.0indirekt
npmcore-util-is1.0.3indirekt
npmcosmiconfig7.1.0indirekt
npmcreate-ecdh4.0.4indirekt
npmcreate-hash1.1.3indirekt
npmcreate-hash1.2.0indirekt
npmcreate-hmac1.1.7indirekt
npmcross-spawn7.0.6indirekt
npmcrypt0.0.2indirekt
npmcrypto-browserify3.12.1indirekt
npmcss-declaration-sorter6.4.1indirekt
npmcss-loader5.2.7indirekt
npmcss-select4.3.0indirekt
npmcss-tree1.1.3indirekt
npmcss-what6.2.2indirekt
npmcssesc3.0.0indirekt
npmcssnano5.1.15indirekt
npmcssnano-preset-default5.2.14indirekt
npmcssnano-utils3.1.0indirekt
npmcsso4.2.0indirekt
npmdata-view-buffer1.0.2indirekt
npmdata-view-byte-length1.0.2indirekt
npmdata-view-byte-offset1.0.1indirekt
npmdebug2.6.9indirekt
npmdebug3.2.7indirekt
npmdebug4.4.1indirekt
npmdeep-is0.1.4indirekt
npmdefault-gateway6.0.3indirekt
npmdefine-data-property1.1.4indirekt
npmdefine-lazy-prop2.0.0indirekt
npmdefine-properties1.2.1indirekt
npmdepd1.1.2indirekt
npmdepd2.0.0indirekt
npmdes.js1.1.0indirekt
npmdestroy1.2.0indirekt
npmdetect-libc1.0.3indirekt
npmdetect-node2.1.0indirekt
npmdiffie-hellman5.0.3indirekt
npmdir-glob3.0.1indirekt
npmdns-packet5.6.1indirekt
npmdoctrine2.1.0indirekt
npmdoctrine3.0.0indirekt
npmdom-serializer1.4.1indirekt
npmdomain-browser1.2.0indirekt
npmdomelementtype2.3.0indirekt
npmdomhandler3.3.0indirekt
npmdomhandler4.3.1indirekt
npmdomutils2.8.0indirekt
npmdot-case3.0.4indirekt
npmdotenv10.0.0indirekt
npmdotenv-expand5.1.0indirekt
npmdunder-proto1.0.1indirekt
npmee-first1.1.1indirekt
npmelectron-to-chromium1.5.182indirekt
npmelliptic6.6.1indirekt
npmemoji-regex8.0.0indirekt
npmemojis-list3.0.0indirekt
npmencodeurl1.0.2indirekt
npmencodeurl2.0.0indirekt
npmenhanced-resolve5.18.2indirekt
npmentities2.2.0indirekt
npmenvinfo7.14.0indirekt
npmerror-ex1.3.2indirekt
npmes-abstract1.24.0indirekt
npmes-define-property1.0.1indirekt
npmes-errors1.3.0indirekt
npmes-module-lexer1.7.0indirekt
npmes-object-atoms1.1.1indirekt
npmes-set-tostringtag2.1.0indirekt
npmes-shim-unscopables1.1.0indirekt
npmes-to-primitive1.3.0indirekt
npmescalade3.2.0indirekt
npmescape-html1.0.3indirekt
npmescape-string-regexp4.0.0indirekt
npmeslint8.57.1indirekt
npmeslint-config-airbnb-base15.0.0indirekt
npmeslint-config-prettier8.10.0indirekt
npmeslint-import-resolver-node0.3.9indirekt
npmeslint-module-utils2.12.1indirekt
npmeslint-plugin-import2.32.0indirekt
npmeslint-plugin-prettier4.2.1indirekt
npmeslint-scope5.1.1indirekt
npmeslint-scope7.2.2indirekt
npmeslint-visitor-keys3.4.3indirekt
npmespree9.6.1indirekt
npmesquery1.6.0indirekt
npmesrecurse4.3.0indirekt
npmestraverse4.3.0indirekt
npmestraverse5.3.0indirekt
npmesutils2.0.3indirekt
npmetag1.8.1indirekt
npmeventemitter34.0.7indirekt
npmevents3.3.0indirekt
npmevp_bytestokey1.0.3indirekt
npmexeca5.1.1indirekt
npmexpress4.21.2indirekt
npmfast-deep-equal3.1.3indirekt
npmfast-diff1.3.0indirekt
npmfast-glob3.3.3indirekt
npmfast-json-stable-stringify2.1.0indirekt
npmfast-levenshtein2.0.6indirekt
npmfast-uri3.1.3indirekt
npmfastest-levenshtein1.0.16indirekt
npmfastq1.19.1indirekt
npmfaye-websocket0.11.4indirekt
npmfile-entry-cache6.0.1indirekt
npmfile-loader6.2.0indirekt
npmfile-type12.4.2indirekt
npmfill-range7.1.1indirekt
npmfinalhandler1.3.1indirekt
npmfind-cache-dir3.3.2indirekt
npmfind-up4.1.0indirekt
npmfind-up5.0.0indirekt
npmflat5.0.2indirekt
npmflat-cache3.2.0indirekt
npmflatted3.4.2indirekt
npmfollow-redirects1.16.0indirekt
npmfor-each0.3.5indirekt
npmforwarded0.2.0indirekt
npmfraction.js4.3.7indirekt
npmfresh0.5.2indirekt
npmfs-extra10.1.0indirekt
npmfs-monkey1.0.6indirekt
npmfs.realpath1.0.0indirekt
npmfsevents2.3.3indirekt
npmfunction-bind1.1.2indirekt
npmfunction.prototype.name1.1.8indirekt
npmfunctions-have-names1.2.3indirekt
npmgensync1.0.0-beta.2indirekt
npmget-caller-file2.0.5indirekt
npmget-intrinsic1.3.0indirekt
npmget-proto1.0.1indirekt
npmget-stream6.0.1indirekt
npmget-symbol-description1.1.0indirekt
npmglob7.2.3indirekt
npmglob-parent5.1.2indirekt
npmglob-parent6.0.2indirekt
npmglob-to-regexp0.4.1indirekt
npmglobals13.24.0indirekt
npmglobalthis1.0.4indirekt
npmglobby10.0.2indirekt
npmgopd1.2.0indirekt
npmgraceful-fs4.2.11indirekt
npmgraphemer1.4.0indirekt
npmgrowly1.3.0indirekt
npmhandle-thing2.0.1indirekt
npmhas-bigints1.1.0indirekt
npmhas-flag4.0.0indirekt
npmhas-property-descriptors1.0.2indirekt
npmhas-proto1.2.0indirekt
npmhas-symbols1.1.0indirekt
npmhas-tostringtag1.0.2indirekt
npmhash-base2.0.2indirekt
npmhash-base3.0.5indirekt
npmhash-sum1.0.2indirekt
npmhash.js1.1.7indirekt
npmhasown2.0.2indirekt
npmhe1.2.0indirekt
npmhmac-drbg1.0.1indirekt
npmhpack.js2.1.6indirekt
npmhtml-entities2.6.0indirekt
npmhtml-loader1.3.2indirekt
npmhtml-minifier-terser5.1.1indirekt
npmhtmlparser24.1.0indirekt
npmhttp-deceiver1.2.7indirekt
npmhttp-errors1.6.3indirekt
npmhttp-errors2.0.0indirekt
npmhttp-parser-js0.5.10indirekt
npmhttp-proxy1.18.1indirekt
npmhttp-proxy-middleware2.0.10indirekt
npmhttps-browserify1.0.0indirekt
npmhuman-signals2.1.0indirekt
npmiconv-lite0.4.24indirekt
npmicss-utils5.1.0indirekt
npmieee7541.2.1indirekt
npmignore5.3.2indirekt
npmimagemin7.0.1indirekt
npmimg-loader4.0.0indirekt
npmimmutable5.1.9indirekt
npmimport-fresh3.3.1indirekt
npmimport-local3.2.0indirekt
npmimurmurhash0.1.4indirekt
npminflight1.0.6indirekt
npminherits2.0.3indirekt
npminherits2.0.4indirekt
npminternal-slot1.1.0indirekt
npminterpret2.2.0indirekt
npminterpret3.1.1indirekt
npmipaddr.js1.9.1indirekt
npmipaddr.js2.2.0indirekt
npmis-array-buffer3.0.5indirekt
npmis-arrayish0.2.1indirekt
npmis-async-function2.1.1indirekt
npmis-bigint1.1.0indirekt
npmis-binary-path2.1.0indirekt
npmis-boolean-object1.2.2indirekt
npmis-buffer1.1.6indirekt
npmis-callable1.2.7indirekt
npmis-core-module2.16.1indirekt
npmis-data-view1.0.2indirekt
npmis-date-object1.1.0indirekt
npmis-docker2.2.1indirekt
npmis-extglob2.1.1indirekt
npmis-finalizationregistry1.1.1indirekt
npmis-fullwidth-code-point3.0.0indirekt
npmis-generator-function1.1.0indirekt
npmis-glob4.0.3indirekt
npmis-map2.0.3indirekt
npmis-negative-zero2.0.3indirekt
npmis-number7.0.0indirekt
npmis-number-object1.1.1indirekt
npmis-path-inside3.0.3indirekt
npmis-plain-obj3.0.0indirekt
npmis-plain-object2.0.4indirekt
npmis-regex1.2.1indirekt
npmis-set2.0.3indirekt
npmis-shared-array-buffer1.0.4indirekt
npmis-stream2.0.1indirekt
npmis-string1.1.1indirekt
npmis-symbol1.1.1indirekt
npmis-typed-array1.1.15indirekt
npmis-weakmap2.0.2indirekt
npmis-weakref1.1.1indirekt
npmis-weakset2.0.4indirekt
npmis-wsl2.2.0indirekt
npmisarray1.0.0indirekt
npmisarray2.0.5indirekt
npmisexe2.0.0indirekt
npmisobject3.0.1indirekt
npmjest-worker27.5.1indirekt
npmjquery3.7.1indirekt
npmjs-tokens4.0.0indirekt
npmjs-yaml4.3.0indirekt
npmjsesc3.0.2indirekt
npmjsesc3.1.0indirekt
npmjson-buffer3.0.1indirekt
npmjson-parse-even-better-errors2.3.1indirekt
npmjson-schema-traverse0.4.1indirekt
npmjson-schema-traverse1.0.0indirekt
npmjson-stable-stringify-without-jsonify1.0.1indirekt
npmjson51.0.2indirekt
npmjson52.2.3indirekt
npmjsonfile6.1.0indirekt
npmjunk3.1.0indirekt
npmkeyv4.5.4indirekt
npmkind-of6.0.3indirekt
npmklona2.0.6indirekt
npmlaravel-mix6.0.49indirekt
npmlaunch-editor2.14.1indirekt
npmlevn0.4.1indirekt
npmlilconfig2.1.0indirekt
npmlines-and-columns1.2.4indirekt
npmloader-runner4.3.0indirekt
npmloader-utils1.4.2indirekt
npmloader-utils2.0.4indirekt
npmlocate-path5.0.0indirekt
npmlocate-path6.0.0indirekt
npmlodash4.18.1indirekt
npmlodash.debounce4.0.8indirekt
npmlodash.memoize4.1.2indirekt
npmlodash.merge4.6.2indirekt
npmlodash.uniq4.5.0indirekt
npmlower-case2.0.2indirekt
npmlru-cache5.1.1indirekt
npmmake-dir3.1.0indirekt
npmmath-intrinsics1.1.0indirekt
npmmd52.3.0indirekt
npmmd5.js1.3.5indirekt
npmmdn-data2.0.14indirekt
npmmedia-typer0.3.0indirekt
npmmemfs3.5.3indirekt
npmmerge-descriptors1.0.3indirekt
npmmerge-stream2.0.0indirekt
npmmerge21.4.1indirekt
npmmethods1.1.2indirekt
npmmicromatch4.0.8indirekt
npmmiller-rabin4.0.1indirekt
npmmime1.6.0indirekt
npmmime-db1.52.0indirekt
npmmime-types2.1.35indirekt
npmmimic-fn2.1.0indirekt
npmmini-css-extract-plugin1.6.2indirekt
npmminimalistic-assert1.0.1indirekt
npmminimalistic-crypto-utils1.0.1indirekt
npmminimatch3.1.5indirekt
npmminimist1.2.8indirekt
npmms2.0.0indirekt
npmms2.1.3indirekt
npmmulticast-dns7.2.5indirekt
npmnanoid3.3.15indirekt
npmnatural-compare1.4.0indirekt
npmnegotiator0.6.3indirekt
npmnegotiator0.6.4indirekt
npmneo-async2.6.2indirekt
npmno-case3.0.4indirekt
npmnode-addon-api7.1.1indirekt
npmnode-forge1.4.0indirekt
npmnode-libs-browser2.2.1indirekt
npmnode-notifier9.0.1indirekt
npmnode-releases2.0.19indirekt
npmnormalize-path3.0.0indirekt
npmnormalize-range0.1.2indirekt
npmnormalize-url6.1.0indirekt
npmnpm-run-path4.0.1indirekt
npmnth-check2.1.1indirekt
npmobject-inspect1.13.4indirekt
npmobject-keys1.1.1indirekt
npmobject.assign4.1.7indirekt
npmobject.entries1.1.9indirekt
npmobject.fromentries2.0.8indirekt
npmobject.groupby1.0.3indirekt
npmobject.values1.2.1indirekt
npmobuf1.1.2indirekt
npmon-finished2.4.1indirekt
npmon-headers1.1.0indirekt
npmonce1.4.0indirekt
npmonetime5.1.2indirekt
npmopen8.4.2indirekt
npmoptionator0.9.4indirekt
npmos-browserify0.3.0indirekt
npmown-keys1.0.1indirekt
npmp-limit2.3.0indirekt
npmp-limit3.1.0indirekt
npmp-locate4.1.0indirekt
npmp-locate5.0.0indirekt
npmp-pipe3.1.0indirekt
npmp-retry4.6.2indirekt
npmp-try2.2.0indirekt
npmpako1.0.11indirekt
npmparam-case3.0.4indirekt
npmparent-module1.0.1indirekt
npmparse-asn15.1.7indirekt
npmparse-json5.2.0indirekt
npmparseurl1.3.3indirekt
npmpascal-case3.1.2indirekt
npmpath-browserify0.0.1indirekt
npmpath-exists4.0.0indirekt
npmpath-is-absolute1.0.1indirekt
npmpath-key3.1.1indirekt
npmpath-parse1.0.7indirekt
npmpath-to-regexp0.1.13indirekt
npmpath-type4.0.0indirekt
npmpbkdf23.1.3indirekt
npmpicocolors1.1.1indirekt
npmpicomatch2.3.2indirekt
npmpkg-dir4.2.0indirekt
npmpossible-typed-array-names1.1.0indirekt
npmpostcss8.5.16indirekt
npmpostcss-calc8.2.4indirekt
npmpostcss-colormin5.3.1indirekt
npmpostcss-convert-values5.1.3indirekt
npmpostcss-discard-comments5.1.2indirekt
npmpostcss-discard-duplicates5.1.0indirekt
npmpostcss-discard-empty5.1.1indirekt
npmpostcss-discard-overridden5.1.0indirekt
npmpostcss-load-config3.1.4indirekt
npmpostcss-loader6.2.1indirekt
npmpostcss-merge-longhand5.1.7indirekt
npmpostcss-merge-rules5.1.4indirekt
npmpostcss-minify-font-values5.1.0indirekt
npmpostcss-minify-gradients5.1.1indirekt
npmpostcss-minify-params5.1.4indirekt
npmpostcss-minify-selectors5.2.1indirekt
npmpostcss-modules-extract-imports3.1.0indirekt
npmpostcss-modules-local-by-default4.2.0indirekt
npmpostcss-modules-scope3.2.1indirekt
npmpostcss-modules-values4.0.0indirekt
npmpostcss-normalize-charset5.1.0indirekt
npmpostcss-normalize-display-values5.1.0indirekt
npmpostcss-normalize-positions5.1.1indirekt
npmpostcss-normalize-repeat-style5.1.1indirekt
npmpostcss-normalize-string5.1.0indirekt
npmpostcss-normalize-timing-functions5.1.0indirekt
npmpostcss-normalize-unicode5.1.1indirekt
npmpostcss-normalize-url5.1.0indirekt
npmpostcss-normalize-whitespace5.1.1indirekt
npmpostcss-ordered-values5.1.3indirekt
npmpostcss-reduce-initial5.1.2indirekt
npmpostcss-reduce-transforms5.1.0indirekt
npmpostcss-selector-parser6.1.2indirekt
npmpostcss-selector-parser7.1.0indirekt
npmpostcss-svgo5.1.0indirekt
npmpostcss-unique-selectors5.1.1indirekt
npmpostcss-value-parser4.2.0indirekt
npmprelude-ls1.2.1indirekt
npmprettier2.8.8indirekt
npmprettier-linter-helpers1.0.0indirekt
npmpretty-time1.1.0indirekt
npmprocess0.11.10indirekt
npmprocess-nextick-args2.0.1indirekt
npmproxy-addr2.0.7indirekt
npmpublic-encrypt4.0.3indirekt
npmpunycode1.4.1indirekt
npmpunycode2.3.1indirekt
npmqs6.15.3indirekt
npmquerystring-es30.2.1indirekt
npmqueue-microtask1.2.3indirekt
npmrandombytes2.1.0indirekt
npmrandomfill1.0.4indirekt
npmrange-parser1.2.1indirekt
npmraw-body2.5.2indirekt
npmreadable-stream2.3.8indirekt
npmreadable-stream3.6.2indirekt
npmreaddirp3.6.0indirekt
npmreaddirp4.1.2indirekt
npmrechoir0.7.1indirekt
npmrechoir0.8.0indirekt
npmreflect.getprototypeof1.0.10indirekt
npmregenerate1.4.2indirekt
npmregenerate-unicode-properties10.2.0indirekt
npmregexp.prototype.flags1.5.4indirekt
npmregexpu-core6.2.0indirekt
npmregjsgen0.8.0indirekt
npmregjsparser0.12.0indirekt
npmrelateurl0.2.7indirekt
npmreplace-ext1.0.1indirekt
npmrequire-directory2.1.1indirekt
npmrequire-from-string2.0.2indirekt
npmrequires-port1.0.0indirekt
npmresolve1.22.10indirekt
npmresolve-cwd3.0.0indirekt
npmresolve-from4.0.0indirekt
npmresolve-from5.0.0indirekt
npmretry0.13.1indirekt
npmreusify1.1.0indirekt
npmrimraf3.0.2indirekt
npmripemd1602.0.1indirekt
npmripemd1602.0.2indirekt
npmrun-parallel1.2.0indirekt
npmsafe-array-concat1.1.3indirekt
npmsafe-buffer5.1.2indirekt
npmsafe-buffer5.2.1indirekt
npmsafe-push-apply1.0.0indirekt
npmsafe-regex-test1.1.0indirekt
npmsafer-buffer2.1.2indirekt
npmsass1.89.2indirekt
npmsass-loader13.3.3indirekt
npmsax1.6.0indirekt
npmschema-utils2.7.1indirekt
npmschema-utils3.3.0indirekt
npmschema-utils4.3.2indirekt
npmselect-hose2.0.0indirekt
npmselfsigned2.4.1indirekt
npmsemver6.3.1indirekt
npmsemver7.7.2indirekt
npmsend0.19.0indirekt
npmserialize-javascript7.0.7indirekt
npmserve-index1.9.1indirekt
npmserve-static1.16.2indirekt
npmset-function-length1.2.2indirekt
npmset-function-name2.0.2indirekt
npmset-proto1.0.0indirekt
npmsetimmediate1.0.5indirekt
npmsetprototypeof1.1.0indirekt
npmsetprototypeof1.2.0indirekt
npmsha.js2.4.12indirekt
npmshallow-clone3.0.1indirekt
npmshebang-command2.0.0indirekt
npmshebang-regex3.0.0indirekt
npmshell-quote1.9.0indirekt
npmshellwords0.1.1indirekt
npmside-channel1.1.1indirekt
npmside-channel-list1.0.1indirekt
npmside-channel-map1.0.1indirekt
npmside-channel-weakmap1.0.2indirekt
npmsignal-exit3.0.7indirekt
npmslash3.0.0indirekt
npmsockjs0.3.24indirekt
npmsource-list-map2.0.1indirekt
npmsource-map0.6.1indirekt
npmsource-map-js1.2.1indirekt
npmsource-map-support0.5.21indirekt
npmspdy4.0.2indirekt
npmspdy-transport3.0.0indirekt
npmstable0.1.8indirekt
npmstatuses1.5.0indirekt
npmstatuses2.0.1indirekt
npmstd-env3.9.0indirekt
npmstop-iteration-iterator1.1.0indirekt
npmstream-browserify2.0.2indirekt
npmstream-http2.8.3indirekt
npmstring-width4.2.3indirekt
npmstring.prototype.trim1.2.10indirekt
npmstring.prototype.trimend1.0.9indirekt
npmstring.prototype.trimstart1.0.8indirekt
npmstring_decoder1.1.1indirekt
npmstring_decoder1.3.0indirekt
npmstrip-ansi6.0.1indirekt
npmstrip-bom3.0.0indirekt
npmstrip-final-newline2.0.0indirekt
npmstrip-json-comments3.1.1indirekt
npmstyle-loader2.0.0indirekt
npmstylehacks5.1.1indirekt
npmsupports-color7.2.0indirekt
npmsupports-color8.1.1indirekt
npmsupports-preserve-symlinks-flag1.0.0indirekt
npmsvgo2.8.2indirekt
npmtapable2.2.2indirekt
npmterser4.8.1indirekt
npmterser5.43.1indirekt
npmterser-webpack-plugin5.3.14indirekt
npmtext-table0.2.0indirekt
npmthunky1.1.0indirekt
npmtimers-browserify2.0.12indirekt
npmto-arraybuffer1.0.1indirekt
npmto-buffer1.2.1indirekt
npmto-regex-range5.0.1indirekt
npmtoidentifier1.0.1indirekt
npmtsconfig-paths3.15.0indirekt
npmtslib2.8.1indirekt
npmtty-browserify0.0.0indirekt
npmtype-check0.4.0indirekt
npmtype-fest0.20.2indirekt
npmtype-is1.6.18indirekt
npmtyped-array-buffer1.0.3indirekt
npmtyped-array-byte-length1.0.3indirekt
npmtyped-array-byte-offset1.0.4indirekt
npmtyped-array-length1.0.7indirekt
npmunbox-primitive1.1.0indirekt
npmundici-types7.8.0indirekt
npmunicode-canonical-property-names-ecmascript2.0.1indirekt
npmunicode-match-property-ecmascript2.0.0indirekt
npmunicode-match-property-value-ecmascript2.2.0indirekt
npmunicode-property-aliases-ecmascript2.1.0indirekt
npmuniversalify2.0.1indirekt
npmunpipe1.0.0indirekt
npmupdate-browserslist-db1.1.3indirekt
npmuri-js4.4.1indirekt
npmurl0.11.4indirekt
npmutil0.10.4indirekt
npmutil0.11.1indirekt
npmutil-deprecate1.0.2indirekt
npmutils-merge1.0.1indirekt
npmuuid11.1.1indirekt
npmvary1.1.2indirekt
npmvm-browserify1.1.2indirekt
npmvue-style-loader4.1.3indirekt
npmwatchpack2.4.4indirekt
npmwbuf1.7.3indirekt
npmwebpack5.100.1indirekt
npmwebpack-cli4.10.0indirekt
npmwebpack-cli6.0.1indirekt
npmwebpack-dev-middleware5.3.4indirekt
npmwebpack-dev-server4.15.2indirekt
npmwebpack-merge5.10.0indirekt
npmwebpack-merge6.0.1indirekt
npmwebpack-notifier1.15.0indirekt
npmwebpack-sources1.4.3indirekt
npmwebpack-sources3.3.3indirekt
npmwebpackbar5.0.2indirekt
npmwebsocket-driver0.7.4indirekt
npmwebsocket-extensions0.1.4indirekt
npmwhich2.0.2indirekt
npmwhich-boxed-primitive1.1.1indirekt
npmwhich-builtin-type1.2.1indirekt
npmwhich-collection1.0.2indirekt
npmwhich-typed-array1.1.19indirekt
npmwildcard2.0.1indirekt
npmword-wrap1.2.5indirekt
npmwrap-ansi7.0.0indirekt
npmwrappy1.0.2indirekt
npmws8.21.0indirekt
npmxtend4.0.2indirekt
npmy18n5.0.8indirekt
npmyallist3.1.1indirekt
npmyaml1.10.3indirekt
npmyargs17.7.2indirekt
npmyargs-parser21.1.1indirekt
npmyocto-queue0.1.0indirekt
Packagistaws/aws-crt-php1.2.7indirekt
Packagistaws/aws-sdk-php3.388.1indirekt
Packagistbarryvdh/laravel-ide-helper3.7.0indirekt
Packagistbarryvdh/reflection-docblock2.4.1indirekt
Packagistbrick/math0.18.0indirekt
Packagistcarbonphp/carbon-doctrine-types3.2.0indirekt
Packagistclue/stream-filter1.7.0indirekt
Packagistcomposer/class-map-generator1.7.3indirekt
Packagistcomposer/pcre3.4.0indirekt
Packagistdflydev/dot-access-data3.0.3indirekt
Packagistdoctrine/inflector2.1.0indirekt
Packagistdoctrine/lexer3.0.1indirekt
Packagistdragonmantank/cron-expression3.6.0indirekt
Packagistegulias/email-validator4.0.4indirekt
Packagistfakerphp/faker1.24.1indirekt
Packagistfilp/whoops2.18.4indirekt
Packagistfruitcake/php-cors1.4.0indirekt
Packagistgraham-campbell/bounded-cache3.1.0indirekt
Packagistgraham-campbell/manager5.3.0indirekt
Packagistgraham-campbell/result-type1.1.4indirekt
Packagistguzzlehttp/promises2.5.1indirekt
Packagistguzzlehttp/psr72.12.4indirekt
Packagistguzzlehttp/uri-template1.0.9indirekt
Packagisthamcrest/hamcrest-php2.1.1indirekt
Packagistknplabs/github-api3.16.0indirekt
Packagistlaravel/prompts0.3.21indirekt
Packagistlaravel/serializable-closure2.0.13indirekt
Packagistlcobucci/jwt5.6.0indirekt
Packagistleague/commonmark2.8.2indirekt
Packagistleague/config1.2.0indirekt
Packagistleague/flysystem3.35.2indirekt
Packagistleague/flysystem-local3.31.0indirekt
Packagistleague/mime-type-detection1.16.0indirekt
Packagistleague/uri7.8.1indirekt
Packagistleague/uri-interfaces7.8.1indirekt
Packagistmockery/mockery1.6.12indirekt
Packagistmonolog/monolog3.10.0indirekt
Packagistmtdowling/jmespath.php2.9.2indirekt
Packagistmyclabs/deep-copy1.13.4indirekt
Packagistnesbot/carbon3.13.0indirekt
Packagistnette/schema1.3.5indirekt
Packagistnette/utils4.1.4indirekt
Packagistnikic/php-parser5.8.0indirekt
Packagistnunomaduro/termwind2.4.0indirekt
Packagistnyholm/psr71.8.2indirekt
Packagistphar-io/manifest2.0.4indirekt
Packagistphar-io/version3.2.1indirekt
Packagistphp-http/cache-plugin2.1.0indirekt
Packagistphp-http/client-common2.7.3indirekt
Packagistphp-http/discovery1.20.0indirekt
Packagistphp-http/httplug2.4.1indirekt
Packagistphp-http/message1.16.2indirekt
Packagistphp-http/multipart-stream-builder1.4.2indirekt
Packagistphp-http/promise1.3.1indirekt
Packagistphpoption/phpoption1.9.5indirekt
Packagistphpunit/php-code-coverage12.5.7indirekt
Packagistphpunit/php-file-iterator6.0.1indirekt
Packagistphpunit/php-invoker6.0.0indirekt
Packagistphpunit/php-text-template5.0.0indirekt
Packagistphpunit/php-timer8.0.0indirekt
Packagistphpunit/phpunit12.5.31indirekt
Packagistphrity/comparison1.4.1indirekt
Packagistphrity/http1.1.0indirekt
Packagistphrity/net-stream2.4.0indirekt
Packagistphrity/net-uri2.2.1indirekt
Packagistphrity/util-accessor1.3.1indirekt
Packagistphrity/util-errorhandler1.2.2indirekt
Packagistphrity/util-interpolator1.1.1indirekt
Packagistphrity/util-transformer1.3.1indirekt
Packagistpsr/cache3.0.0indirekt
Packagistpsr/clock1.0.0indirekt
Packagistpsr/container2.0.2indirekt
Packagistpsr/event-dispatcher1.0.0indirekt
Packagistpsr/http-client1.0.3indirekt
Packagistpsr/http-factory1.1.0indirekt
Packagistpsr/http-message2.0indirekt
Packagistpsr/log3.0.2indirekt
Packagistpsr/simple-cache3.0.0indirekt
Packagistpsy/psysh0.12.24indirekt
Packagistralouphie/getallheaders3.0.3indirekt
Packagistramsey/collection2.1.1indirekt
Packagistramsey/uuid4.9.3indirekt
Packagistsebastian/cli-parser4.2.1indirekt
Packagistsebastian/comparator7.1.8indirekt
Packagistsebastian/complexity5.0.0indirekt
Packagistsebastian/diff7.0.0indirekt
Packagistsebastian/environment8.1.2indirekt
Packagistsebastian/exporter7.0.3indirekt
Packagistsebastian/global-state8.0.3indirekt
Packagistsebastian/lines-of-code4.0.1indirekt
Packagistsebastian/object-enumerator7.0.0indirekt
Packagistsebastian/object-reflector5.0.0indirekt
Packagistsebastian/recursion-context7.0.1indirekt
Packagistsebastian/type6.0.4indirekt
Packagistsebastian/version6.0.0indirekt
Packagistspatie/backtrace1.8.2indirekt
Packagistspatie/error-solutions1.1.3indirekt
Packagistspatie/flare-client-php1.11.1indirekt
Packagistspatie/ignition1.16.0indirekt
Packagistsquizlabs/php_codesniffer3.13.5indirekt
Packagiststaabm/side-effects-detector1.0.5indirekt
Packagistsymfony/cache8.1.1indirekt
Packagistsymfony/cache-contracts3.7.1indirekt
Packagistsymfony/clock8.1.0indirekt
Packagistsymfony/console8.1.1indirekt
Packagistsymfony/css-selector8.1.0indirekt
Packagistsymfony/deprecation-contracts3.7.1indirekt
Packagistsymfony/error-handler8.1.0indirekt
Packagistsymfony/event-dispatcher8.1.1indirekt
Packagistsymfony/event-dispatcher-contracts3.7.1indirekt
Packagistsymfony/filesystem8.1.0indirekt
Packagistsymfony/finder8.1.1indirekt
Packagistsymfony/http-foundation8.1.1indirekt
Packagistsymfony/http-kernel8.1.1indirekt
Packagistsymfony/mailer8.1.1indirekt
Packagistsymfony/mime8.1.0indirekt
Packagistsymfony/options-resolver8.1.0indirekt
Packagistsymfony/polyfill-ctype1.37.0indirekt
Packagistsymfony/polyfill-deepclone1.40.0indirekt
Packagistsymfony/polyfill-intl-grapheme1.38.1indirekt
Packagistsymfony/polyfill-intl-idn1.38.1indirekt
Packagistsymfony/polyfill-intl-normalizer1.38.0indirekt
Packagistsymfony/polyfill-mbstring1.38.2indirekt
Packagistsymfony/polyfill-php801.37.0indirekt
Packagistsymfony/polyfill-php841.38.1indirekt
Packagistsymfony/polyfill-php851.38.1indirekt
Packagistsymfony/polyfill-php861.38.0indirekt
Packagistsymfony/polyfill-uuid1.37.0indirekt
Packagistsymfony/process8.1.0indirekt
Packagistsymfony/routing8.1.0indirekt
Packagistsymfony/service-contracts3.7.1indirekt
Packagistsymfony/string8.1.0indirekt
Packagistsymfony/thanks1.4.1indirekt
Packagistsymfony/translation8.1.1indirekt
Packagistsymfony/translation-contracts3.7.1indirekt
Packagistsymfony/uid8.1.0indirekt
Packagistsymfony/var-dumper8.1.1indirekt
Packagistsymfony/var-exporter8.1.1indirekt
Packagisttheseer/tokenizer2.0.1indirekt
Packagisttijsverkoyen/css-to-inline-styles2.4.0indirekt
Packagistvlucas/phpdotenv5.6.4indirekt
Packagistvoku/portable-ascii2.1.1indirekt
Abhängigkeits-Advisories 12

Dieses Repository veröffentlicht kein vom Index auflösbares Paket, daher wurde sein eigener Abhängigkeitsgraph bewertet – 1.015 Pakete, darunter auch Entwicklungs- und Test-Pins, die nie ausgeliefert werden: 12 tragen bekannte Advisories, davon 1 direkte.

PaketVersionBeziehungSchweregradAdvisoriesBehoben in
brace-expansion1.1.16indirekthoch15.0.8
elliptic6.6.1indirekthoch1
fast-uri3.1.3indirekthoch14.1.1
postcss8.5.16indirekthoch18.5.18
svgo2.8.2indirekthoch14.0.2
websocket-driver0.7.4indirekthoch20.7.5
guzzlehttp/guzzle7.13.3direktmittel47.15.1
ajv6.12.6indirektmittel18.18.0
ajv8.17.1indirektmittel18.18.0
webpack-dev-server4.15.2indirektmittel65.2.6
body-parser1.20.3indirektniedrig12.3.0
webpack5.100.1indirektniedrig25.104.1

Ein Advisory bedeutet, dass die im Abhängigkeitsgraphen erfasste Version in den betroffenen Bereich eines Advisories fällt. Erreichbarkeit wird nicht analysiert, und der Graph enthält Entwicklungs- und Test-Pins — ein Fund kann das Werkzeug betreffen und nicht die ausgelieferte Software.

JSON-Rohbericht maschinenlesbar
{
  "data": {
    "repo": {
      "topics": [
        "heimdall",
        "nzbget",
        "sabnzbd",
        "nginx",
        "dashboard",
        "plex",
        "application-dashboard",
        "bookmark",
        "emby",
        "startpage",
        "server",
        "htpc",
        "sonarr",
        "radarr",
        "homepage",
        "landingpage",
        "landing",
        "couchpotato",
        "organizr",
        "muximux"
      ],
      "is_fork": false,
      "size_kb": 46387,
      "has_wiki": true,
      "homepage": null,
      "languages": {
        "PHP": 1555711,
        "SCSS": 23048,
        "Blade": 82213,
        "Dockerfile": 135,
        "JavaScript": 10712
      },
      "pushed_at": "2026-07-10T16:10:03Z",
      "created_at": "2018-01-26T12:04:05Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-24T19:17:12Z",
      "description": "An Application dashboard and launcher",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MIT",
      "default_branch": "2.x",
      "license_spdx_raw": "MIT",
      "primary_language": "PHP",
      "significant_languages": [
        "PHP"
      ]
    },
    "owner": {
      "blog": "https://www.linuxserver.io",
      "name": "LinuxServer.io",
      "type": "Organization",
      "login": "linuxserver",
      "company": null,
      "location": null,
      "followers": 6697,
      "avatar_url": "https://avatars.githubusercontent.com/u/12324908?v=4",
      "created_at": "2015-05-08T08:06:11Z",
      "is_verified": null,
      "public_repos": 319,
      "account_age_days": 4095
    },
    "license": {
      "state": "standard",
      "spdx_id": "MIT",
      "raw_spdx": "MIT",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v2.8.1",
          "kind": "patch",
          "published_at": "2026-07-09T21:59:01Z"
        },
        {
          "tag": "v2.8.0",
          "kind": "minor",
          "published_at": "2026-07-09T10:32:44Z"
        },
        {
          "tag": "v2.7.6",
          "kind": "patch",
          "published_at": "2025-09-15T15:50:44Z"
        },
        {
          "tag": "v2.7.5",
          "kind": "patch",
          "published_at": "2025-09-10T15:16:49Z"
        },
        {
          "tag": "v2.7.4",
          "kind": "patch",
          "published_at": "2025-08-02T16:51:19Z"
        },
        {
          "tag": "v2.7.3",
          "kind": "patch",
          "published_at": "2025-07-24T18:07:21Z"
        },
        {
          "tag": "v2.7.2",
          "kind": "patch",
          "published_at": "2025-07-22T15:00:08Z"
        },
        {
          "tag": "v2.7.1",
          "kind": "patch",
          "published_at": "2025-07-21T09:13:14Z"
        },
        {
          "tag": "v2.7.0",
          "kind": "minor",
          "published_at": "2025-07-17T14:08:16Z"
        },
        {
          "tag": "v2.6.3",
          "kind": "patch",
          "published_at": "2024-11-05T11:00:43Z"
        },
        {
          "tag": "v2.6.2",
          "kind": "patch",
          "published_at": "2024-11-04T10:07:20Z"
        },
        {
          "tag": "v2.6.1",
          "kind": "patch",
          "published_at": "2024-02-19T11:15:07Z"
        },
        {
          "tag": "v2.6.0",
          "kind": "minor",
          "published_at": "2024-02-18T21:05:25Z"
        },
        {
          "tag": "V2.5.8",
          "kind": "other",
          "published_at": "2023-11-11T15:06:36Z"
        },
        {
          "tag": "v2.5.7",
          "kind": "patch",
          "published_at": "2023-09-21T15:42:01Z"
        },
        {
          "tag": "v2.5.6",
          "kind": "patch",
          "published_at": "2023-03-09T16:16:38Z"
        },
        {
          "tag": "v2.5.5",
          "kind": "patch",
          "published_at": "2023-01-09T19:29:47Z"
        },
        {
          "tag": "v2.5.4",
          "kind": "patch",
          "published_at": "2022-12-09T15:15:41Z"
        },
        {
          "tag": "v2.5.3",
          "kind": "patch",
          "published_at": "2022-11-27T11:34:13Z"
        },
        {
          "tag": "v2.5.2",
          "kind": "patch",
          "published_at": "2022-11-25T16:27:24Z"
        },
        {
          "tag": "v2.5.1",
          "kind": "patch",
          "published_at": "2022-11-24T22:59:36Z"
        },
        {
          "tag": "v2.5.0",
          "kind": "minor",
          "published_at": "2022-11-24T21:07:30Z"
        },
        {
          "tag": "v2.4.15",
          "kind": "patch",
          "published_at": "2022-11-05T08:22:25Z"
        },
        {
          "tag": "v2.4.14",
          "kind": "patch",
          "published_at": "2022-11-04T15:59:35Z"
        },
        {
          "tag": "v2.4.13",
          "kind": "patch",
          "published_at": "2022-06-29T12:24:21Z"
        },
        {
          "tag": "v2.4.12",
          "kind": "patch",
          "published_at": "2022-04-13T13:13:21Z"
        },
        {
          "tag": "v2.4.11",
          "kind": "patch",
          "published_at": "2022-04-12T12:27:42Z"
        },
        {
          "tag": "v2.4.10",
          "kind": "patch",
          "published_at": "2022-04-02T14:26:07Z"
        },
        {
          "tag": "v2.4.9",
          "kind": "patch",
          "published_at": "2022-03-31T14:50:46Z"
        },
        {
          "tag": "v2.4.8",
          "kind": "patch",
          "published_at": "2022-03-26T19:10:06Z"
        },
        {
          "tag": "v2.4.7b",
          "kind": "other",
          "published_at": "2022-03-25T15:37:50Z"
        },
        {
          "tag": "v2.4.6",
          "kind": "patch",
          "published_at": "2022-03-21T21:40:46Z"
        },
        {
          "tag": "V2.4.5",
          "kind": "other",
          "published_at": "2022-03-19T07:10:17Z"
        },
        {
          "tag": "v2.4.4",
          "kind": "patch",
          "published_at": "2022-03-18T10:11:49Z"
        },
        {
          "tag": "v2.4.3",
          "kind": "patch",
          "published_at": "2022-03-17T19:06:50Z"
        },
        {
          "tag": "v2.4.2",
          "kind": "patch",
          "published_at": "2022-03-17T13:47:02Z"
        },
        {
          "tag": "v2.4.1",
          "kind": "patch",
          "published_at": "2022-03-17T13:01:28Z"
        },
        {
          "tag": "v2.4.0",
          "kind": "minor",
          "published_at": "2022-03-17T11:31:47Z"
        },
        {
          "tag": "v2.3.2",
          "kind": "patch",
          "published_at": "2022-03-14T07:59:03Z"
        },
        {
          "tag": "v2.3.1",
          "kind": "patch",
          "published_at": "2022-03-13T19:48:06Z"
        },
        {
          "tag": "v2.3.0",
          "kind": "minor",
          "published_at": "2022-03-13T13:41:03Z"
        },
        {
          "tag": "2.2.2",
          "kind": "patch",
          "published_at": "2019-06-22T16:07:18Z"
        },
        {
          "tag": "2.2.1",
          "kind": "patch",
          "published_at": "2019-06-19T09:55:29Z"
        },
        {
          "tag": "2.2.0",
          "kind": "minor",
          "published_at": "2019-06-11T11:41:50Z"
        },
        {
          "tag": "2.1.13",
          "kind": "patch",
          "published_at": "2019-01-16T17:25:58Z"
        },
        {
          "tag": "2.1.12",
          "kind": "patch",
          "published_at": "2018-11-14T18:16:40Z"
        },
        {
          "tag": "2.1.11",
          "kind": "patch",
          "published_at": "2018-11-10T18:07:42Z"
        },
        {
          "tag": "2.1.10",
          "kind": "patch",
          "published_at": "2018-11-07T08:57:50Z"
        },
        {
          "tag": "2.1.9",
          "kind": "patch",
          "published_at": "2018-11-06T15:17:24Z"
        },
        {
          "tag": "2.1.8",
          "kind": "patch",
          "published_at": "2018-11-06T11:30:17Z"
        },
        {
          "tag": "2.1.7",
          "kind": "patch",
          "published_at": "2018-11-06T09:52:12Z"
        },
        {
          "tag": "2.1.6",
          "kind": "patch",
          "published_at": "2018-11-05T19:04:00Z"
        },
        {
          "tag": "2.1.5",
          "kind": "patch",
          "published_at": "2018-11-05T15:29:12Z"
        },
        {
          "tag": "2.1.4",
          "kind": "patch",
          "published_at": "2018-11-05T09:44:37Z"
        },
        {
          "tag": "2.1.3",
          "kind": "patch",
          "published_at": "2018-11-04T22:34:27Z"
        },
        {
          "tag": "2.1.2",
          "kind": "patch",
          "published_at": "2018-11-04T21:44:32Z"
        },
        {
          "tag": "2.1.1",
          "kind": "patch",
          "published_at": "2018-11-04T16:26:41Z"
        },
        {
          "tag": "2.1.0",
          "kind": "minor",
          "published_at": "2018-11-04T16:22:36Z"
        },
        {
          "tag": "2.0.3",
          "kind": "patch",
          "published_at": "2018-10-21T12:51:57Z"
        },
        {
          "tag": "2.0.2",
          "kind": "patch",
          "published_at": "2018-10-17T21:19:38Z"
        },
        {
          "tag": "2.0.1",
          "kind": "patch",
          "published_at": "2018-10-17T18:54:34Z"
        },
        {
          "tag": "2.0.0",
          "kind": "major",
          "published_at": "2018-10-17T17:46:26Z"
        },
        {
          "tag": "1.4.17",
          "kind": "patch",
          "published_at": "2018-09-30T14:48:34Z"
        },
        {
          "tag": "1.4.16",
          "kind": "patch",
          "published_at": "2018-09-30T10:53:57Z"
        },
        {
          "tag": "1.4.15",
          "kind": "patch",
          "published_at": "2018-09-30T10:48:15Z"
        },
        {
          "tag": "1.4.14",
          "kind": "patch",
          "published_at": "2018-07-04T18:38:23Z"
        },
        {
          "tag": "1.4.13",
          "kind": "patch",
          "published_at": "2018-05-04T16:58:46Z"
        },
        {
          "tag": "1.4.12",
          "kind": "patch",
          "published_at": "2018-04-25T22:04:24Z"
        },
        {
          "tag": "1.4.11",
          "kind": "patch",
          "published_at": "2018-04-25T21:59:17Z"
        },
        {
          "tag": "1.4.10",
          "kind": "patch",
          "published_at": "2018-04-25T21:49:56Z"
        },
        {
          "tag": "1.4.9",
          "kind": "patch",
          "published_at": "2018-03-27T09:58:16Z"
        },
        {
          "tag": "1.4.8",
          "kind": "patch",
          "published_at": "2018-03-26T07:37:31Z"
        },
        {
          "tag": "1.4.7",
          "kind": "patch",
          "published_at": "2018-03-11T17:47:30Z"
        },
        {
          "tag": "1.4.6",
          "kind": "patch",
          "published_at": "2018-03-01T19:22:20Z"
        },
        {
          "tag": "1.4.5",
          "kind": "patch",
          "published_at": "2018-02-23T21:17:16Z"
        },
        {
          "tag": "1.4.4",
          "kind": "patch",
          "published_at": "2018-02-18T23:15:55Z"
        },
        {
          "tag": "v1.4.3",
          "kind": "patch",
          "published_at": "2018-02-18T22:36:58Z"
        },
        {
          "tag": "v1.4.2",
          "kind": "patch",
          "published_at": "2018-02-18T19:23:35Z"
        },
        {
          "tag": "v1.4.1",
          "kind": "patch",
          "published_at": "2018-02-18T18:40:40Z"
        },
        {
          "tag": "v1.4.0",
          "kind": "minor",
          "published_at": "2018-02-18T17:59:11Z"
        },
        {
          "tag": "v1.3.4",
          "kind": "patch",
          "published_at": "2018-02-15T20:34:35Z"
        },
        {
          "tag": "v1.3.3",
          "kind": "patch",
          "published_at": "2018-02-14T21:46:00Z"
        },
        {
          "tag": "v1.3.2",
          "kind": "patch",
          "published_at": "2018-02-12T14:50:17Z"
        },
        {
          "tag": "v1.3.1",
          "kind": "patch",
          "published_at": "2018-02-09T17:24:45Z"
        },
        {
          "tag": "v1.3.0",
          "kind": "minor",
          "published_at": "2018-02-09T16:35:50Z"
        },
        {
          "tag": "v1.2.1",
          "kind": "patch",
          "published_at": "2018-02-09T08:29:49Z"
        },
        {
          "tag": "v1.2.0",
          "kind": "minor",
          "published_at": "2018-02-08T10:16:57Z"
        },
        {
          "tag": "v1.1.3",
          "kind": "patch",
          "published_at": "2018-02-06T22:29:58Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "62823aef630386b3246a07cc9eb861824f837c08",
          "body": "🇩🇪 Update German translation",
          "is_bot": false,
          "headline": "Merge pull request #1580 from tuxinaut/chore/de-language-update",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-10T16:10:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2ceec61e172052dbb50ce18af9efcccb02f3845e",
          "body": null,
          "is_bot": false,
          "headline": "Update German translation",
          "author_name": "Schäfer, Denny",
          "author_login": "tuxinaut",
          "committed_at": "2026-07-10T10:30:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8fc5f3ccbf65e89990a8d2c34bc7e7f254eccbab",
          "body": "Bump version to 2.8.1",
          "is_bot": false,
          "headline": "Merge pull request #1579 from linuxserver/release/v2.8.1",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-09T21:58:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6a45d44f6930f2da84e1af3f9174bdbe8e7c0b7a",
          "body": null,
          "is_bot": true,
          "headline": "Bump version to 2.8.1",
          "author_name": "github-actions[bot]",
          "author_login": "github-actions[bot]",
          "committed_at": "2026-07-09T21:35:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "327af60d1c2a0d827bf6fe7e8322b67e5b03e6e3",
          "body": null,
          "is_bot": false,
          "headline": "Update CI",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-09T21:33:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a38ecd4864f94025a1a86290652f70612b9e7654",
          "body": null,
          "is_bot": false,
          "headline": "Automate bumping version",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-09T21:21:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1f7432fa269a5b48c33bb0f08b550d86a0574205",
          "body": "Add WebSocket support for TrueNAS JSON-RPC 2.0 API",
          "is_bot": false,
          "headline": "Merge pull request #1578 from linuxserver/feat/truenas-websocket-client",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-09T21:06:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "55bda9daf059718963cf3b95bd83f41e3c593ae2",
          "body": "Fix checkbox config values always returning \"1\" in Test config",
          "is_bot": false,
          "headline": "Merge pull request #1577 from linuxserver/fix/checkbox-test-config",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-09T21:06:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "667dd4c1295cc6f5bbb361ab16023ac37800f776",
          "body": "Add global TLS verification skip setting",
          "is_bot": false,
          "headline": "Merge pull request #1576 from linuxserver/feat/global-tls-skip",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-09T21:06:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d16b7f60f3551f05f6e0341ba20f9f4151b6eabb",
          "body": "The WebSocket support added for TrueNAS JSON-RPC 2.0 requires the\nphrity/websocket library to actually be available at runtime. This repo\ncommits the vendor/ tree (CI does not run composer install), so the\ndependency and composer.lock must be committed for class_exists() checks\nin the TrueNAS app to\n[…]\n  (phrity/websocket v3 namespace) instead of the non-existent\n  WebSocket\\ConnectionException from the old textalk/websocket v1/v2 API,\n  so connection/call failures are logged and wrapped as intended",
          "is_bot": false,
          "headline": "Vendor phrity/websocket dependency and fix v3 exception namespace",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-09T21:01:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "57fa9f26fbb9a593ea8b1bc26458b5e079e1cdf6",
          "body": "Checkbox-type config options (e.g. ignore_tls) always tested as \"1\"\nregardless of the checkbox state. The Test-button config gatherer used\n$(this).val() for every .config-item, and jQuery .val() on a checkbox\nreturns its value attribute (\"1\") regardless of checked state. App\nconfig blades pair a hid\n[…]\nitted compiled bundle (public/js/app.js) so the\nfix takes effect at runtime; the edit is byte-identical to the Laravel\nMix development build output for this block.\n\nFixes linuxserver/Heimdall-Apps#782",
          "is_bot": false,
          "headline": "Fix checkbox config values always returning \"1\"",
          "author_name": "Jay Collett",
          "author_login": "jaycollett",
          "committed_at": "2026-07-09T20:59:46Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bdf9160fdcdc1cdff6aaafd5bbad09cfbc9ae461",
          "body": "Adds a new boolean setting in the Advanced settings group that allows\nusers to globally skip TLS certificate verification for all enhanced\napps. This is useful for users who have self-signed certificates on\ntheir services.\n\nWhen enabled, the Guzzle HTTP client will set 'verify' => false for\nall API requests made by enhanced apps.\n\nResolves linuxserver/Heimdall-Apps#687",
          "is_bot": false,
          "headline": "Add global TLS verification skip setting",
          "author_name": "Jay Collett",
          "author_login": "jaycollett",
          "committed_at": "2026-07-09T20:57:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "93a321ff5b77e698e52d0e204487a968df4b5fc9",
          "body": "TrueNAS is deprecating the REST API (api/v2.0/) in version 26.04,\nrequiring migration to JSON-RPC 2.0 over WebSocket.\n\nThis commit adds:\n- phrity/websocket dependency for WebSocket communication\n- TrueNASWebSocketClient helper class that handles:\n  - Connection to ws(s)://host/api/current\n  - Authentication via auth.login_with_api_key\n  - JSON-RPC 2.0 request/response formatting\n  - TLS verification toggle\n  - Proper connection cleanup\n\nRefs: #1530",
          "is_bot": false,
          "headline": "Add WebSocket support for TrueNAS JSON-RPC 2.0 API",
          "author_name": "Jay Collett",
          "author_login": "jaycollett",
          "committed_at": "2026-07-09T20:56:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3f483c9ca7be5b947a58eee932041cc02a2ae6bf",
          "body": "Fix to try and mitigate any disappearing tiles",
          "is_bot": false,
          "headline": "Merge pull request #1575 from linuxserver/chore/laravel-13-upgrade",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-09T10:30:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1c7ae3e335853026f301cf16b91ee573d83abca4",
          "body": "Tiles could vanish without ever being deleted:\n\n- Editing an item merged the editor's user_id into every save, so\n  updating a visible item (e.g. a shared user_id=0 tile) silently\n  reassigned ownership and hid it from everyone else. user_id is now\n  set on create only, and excluded from update inpu\n[…]\n orWhere,\n  breaking operator precedence in any query that adds further clauses.\n\nIncludes regression coverage for ownership on create/update, user\ndeletion cleanup, and the orphan-recovery migration.",
          "is_bot": false,
          "headline": "Fix silent tile disappearance and ownership-reassignment bugs",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-09T09:52:29Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2555ab1b3ca0df1a442b13a7e54ffdf70bb3ad86",
          "body": "The :memory: overrides in phpunit.xml had been commented out since 2024,\nso RefreshDatabase ran migrate:fresh against the real .env database and\nwiped it on every local test run. Enable the overrides, let the special\n:memory: identifier bypass database_path() resolution and the boot-time\ntouch(), an\n[…]\nborts the suite unless it is\npointed at in-memory sqlite.\n\nItemExportTest only ever passed by reading the populated dev database;\nseed the root dashboard item it depends on so it passes on a fresh DB.",
          "is_bot": false,
          "headline": "Run tests against in-memory sqlite and refuse real databases",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-09T09:52:17Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "49c29c868134e1c062b1c9738857465ed733b9eb",
          "body": "Upgrade to Laravel 13, bump to v2.8.0, and remediate vulnerabilities",
          "is_bot": false,
          "headline": "Merge pull request #1574 from linuxserver/chore/laravel-13-upgrade",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-09T08:31:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6f932918aa81818371fba59b3f8b8612278b946f",
          "body": "- itemImport: check response.ok in fetchAppDetails so a genuine 404\n  (from the appload return-type fix) is reported as 'Failed to find app\n  id' instead of being parsed as a successful import; applied to the\n  source and the committed compiled bundle.\n- phpunit.xml: point the schema URL at 12.5 to match the installed\n  PHPUnit 12.5.x.\n- ColorHelpersTest: exercise the get_brightness() non-hex stripping the\n  test name promised (interior separators), which the prior assertion\n  never covered.",
          "is_bot": false,
          "headline": "Fix import status regression from appload 404 + tighten upgrade tests",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-09T08:28:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "13642d59d996c11f5707f360f326ce32815e0dca",
          "body": "PHPUnit 12 renamed PHPT -> Phpt (src/Framework/Exception/PhptAssertionFailedError.php\nand the src/Runner/Phpt/ directory). Because this repo commits vendor/ and the\nmacOS dev filesystem is case-insensitive, git kept the old-case paths in the index\nwhile Composer wrote the new case to disk, so the ch\n[…]\nive Linux filesystem the checked-out old-case files don't satisfy\nPHPUnit's require of the new-case names and 'php artisan test' fatals before running.\nRe-track these 8 files under their correct case.",
          "is_bot": false,
          "headline": "Fix committed PHPUnit vendor path casing for case-sensitive CI",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T19:40:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "25d1dc3c6a05dd0a2ad3d09eb649bdc543d41e25",
          "body": null,
          "is_bot": false,
          "headline": "Bump version to 2.8.0",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T19:33:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f1eec81591d91c4ab8c7b78a9822d45d28263067",
          "body": "ItemController::appload() was declared ': ?string', so its two error\nbranches that 'return response()->json([...], 404)' had the JsonResponse\ncoerced through Response::__toString() into a raw HTTP message served as\nan HTTP 200 body. Widen the return type to\n'\\Illuminate\\Http\\JsonResponse|string|null\n[…]\nponses. The method body is unchanged, so the happy path\nstill returns the same JSON string and the frontend contract is preserved.\n\nFlip the endpoint characterization test to assert the corrected 404.",
          "is_bot": false,
          "headline": "Fix appload() returning a coerced HTTP 200 instead of a 404",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T19:33:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "46e09d172a5be8419b8ce1365887a49ac81cc3a4",
          "body": "Add tests guarding the surfaces most likely to break on a future\nLaravel/PHP upgrade:\n- Helper globals: format_bytes, parse_size, className, get_brightness,\n  title_color (tests/Unit/helpers)\n- CSRF exception config actually reaches the framework\n  (PreventRequestForgery neverVerify list) and the ex\n[…]\n resolve\n- Core GET routes boot and render on the current framework\n- Filesystem disks resolve and the local disk root stays pinned to\n  storage_path('app') (guards the Laravel 12 default-root change)",
          "is_bot": false,
          "headline": "Add upgrade-regression test coverage",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T19:33:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9cfa2548faefd35394af966f760eef49b74c20d9",
          "body": "Add a package.json \"overrides\" block forcing patched versions of\nvulnerable transitive build dependencies (shell-quote, ws, node-forge,\nserialize-javascript, lodash, minimatch, path-to-regexp, svgo, postcss,\nqs, uuid and others). This takes `npm audit` from 41 vulnerabilities\n(1 critical, 13 high, 1\n[…]\ner /\nlaravel-mix, and webpack) that cannot be cleared without replacing\nlaravel-mix; none ship in Heimdall's production runtime. Both\n'npm run production' and 'npm run dev' still compile successfully.",
          "is_bot": false,
          "headline": "Remediate npm build-toolchain vulnerabilities via overrides",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T19:33:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8a622545ff474ceb18bf42132fb48de84de27286",
          "body": "- laravel/framework ^12.0 -> ^13.0 (installed 13.19.0)\n- laravel/tinker ^2.9 -> ^3.0 (installed 3.0.2, pulls psysh >=0.12.19)\n- phpunit/phpunit ^11.0 -> ^12.0 (installed 12.5.31)\n- Symfony components move to 8.x (supported by L13); symfony/yaml stays on\n  patched 7.4.14 via its direct ^7.0 constrain\n[…]\nuired; the fluent\n  validateCsrfTokens(except: ...) config still resolves under L13\n\ncomposer audit: No security vulnerability advisories found.\nFull suite green: 59 tests, 128 assertions (1 skipped).",
          "is_bot": false,
          "headline": "Upgrade to Laravel 13",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T18:57:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "39191885e53b2c8ab49b3d594ece9825b6fd87b4",
          "body": "- laravel/framework ^11.45 -> ^12.0 (installed 12.63.0)\n- phpunit/phpunit ^10.5 -> ^11.0; migrate phpunit.xml to the 11.5 schema\n- graham-campbell/github ^12.5 -> ^13.0 (v12 caps illuminate/support at ^11)\n- Carbon 3 pulled in by L12; no application code changes required\n- gitignore /.phpunit.cache\n\nFull suite green: 59 tests, 128 assertions (1 skipped).",
          "is_bot": false,
          "headline": "Upgrade to Laravel 12",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T18:49:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cb59689ead6ba29ea3b8dfe896c8ef9ff8da8b3c",
          "body": "…pdates\n\nUpdate security-flagged dependencies and require PHP 8.4 (#1564)",
          "is_bot": false,
          "headline": "Merge pull request #1569 from linuxserver/chore/security-dependency-u…",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T17:30:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6d0242dead8f7505cf193a2a3669f05109b656e0",
          "body": "Add a configurable default tag for the dashboard",
          "is_bot": false,
          "headline": "Merge pull request #1572 from linuxserver/feature/default-tag-group",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T17:29:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "caa4f39edd9bb4773d64c08df7c6464f1ab9cb95",
          "body": "Include tags in item export and restore them on import",
          "is_bot": false,
          "headline": "Merge pull request #1567 from linuxserver/fix/export-import-tags",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T17:29:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a1f0d8f75d1c1f7f242a4b54390d8e7f5cac32f6",
          "body": "Harden against host header injection and open redirect (CVE-2025-50578)",
          "is_bot": false,
          "headline": "Merge pull request #1568 from linuxserver/fix/host-header-injection",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T17:29:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "076348478eb19d2407fed89d8226c8832892bce2",
          "body": "Return graceful output from get_stats instead of a 500",
          "is_bot": false,
          "headline": "Merge pull request #1570 from linuxserver/fix/getstats-graceful-failure",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T17:28:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ad9baffa627172357f2eb84166ba6555166803cf",
          "body": "The default_tag dropdown was populated from every tag (type=1), but the\ndashboard taglist only renders pinned tags. Selecting an unpinned tag as the\ndefault therefore triggered a click on a taglist entry that does not exist,\nsilently doing nothing. Filter the option queries in both Setting accessors\n[…]\n tag is\nexcluded.\n\nAlso drop the unused $data['default_tag'] assignment in ItemController: the\ntaglist partial reads the setting directly via Setting::fetch(), so the view\nvariable was never consumed.",
          "is_bot": false,
          "headline": "Only offer pinned tags as the default tag",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T17:26:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9a9877a0dc264a908c161d96898864df88014868",
          "body": "The custom TrustHosts middleware only overrode hosts(), so it inherited the\nparent's shouldSpecifyTrustedHosts() gate, which skips enforcement whenever the\napp runs in the local environment or under the test runner. Heimdall ships\nAPP_ENV=local by default (.env.example, copied to .env on install), s\n[…]\nvironment; when it is unset hosts() is empty and enforcement stays off,\npreserving the historic no-restriction behaviour. Add handle()-driven tests\ncovering both the configured and unconfigured cases.",
          "is_bot": false,
          "headline": "Enforce TRUSTED_HOSTS allow-list regardless of APP_ENV",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T17:22:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c0c202c5ff2474f533651b593190656e27dc5ac7",
          "body": "In tags mode the dashboard always opened showing every link. This adds a\n\"Default tag\" setting (Advanced) that pre-selects one tag group on load, so\nthe dashboard opens filtered to it - the built-in equivalent of the custom\nJavaScript workaround people have been sharing.\n\nThe setting is a select pop\n[…]\nprovider. When a tag\nis chosen its slug is exposed on the tag list and the matching tab is\nactivated on load; when the setting is empty, behaviour is unchanged and all\nlinks are shown.\n\nResolves #1556",
          "is_bot": false,
          "headline": "Add a configurable default tag for the dashboard",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T16:10:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f69cbba6cd2a56c05e6b6f8dbf193f8fcfb340ee",
          "body": "Bumps the packages reported by CVE/GHSA scans in #1564 to their patched\nreleases (with transitive dependencies):\n\n- symfony/http-foundation 7.3.1 -> 7.4.14 (CVE-2025-64500 / GHSA-3rg7-wf37-54rm)\n- phpunit/phpunit 10.5.47 -> 10.5.64 (CVE-2026-24765 / GHSA-vvj3-c3rp-c85p)\n- aws/aws-sdk-php 3.349.3 -> \n[…]\nin the report (php84, curl, libpq, git, sqlite,\nbusybox, coreutils) come from the LinuxServer base image, not this\nrepository, and are addressed by rebuilding the image on an updated base.\n\nRefs #1564",
          "is_bot": false,
          "headline": "Update dependencies flagged by security advisories and require PHP 8.4",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T15:30:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ec229ea0af075a35994a8c941479b33c426f7289",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch '2.x' into fix/export-import-tags",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T15:09:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5dcf462542b59bd87824237df37ecb5007ad2f33",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch '2.x' into fix/host-header-injection",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T15:09:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d1c52b886b8500ddde8544f9fa003e5c4364bc84",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch '2.x' into fix/getstats-graceful-failure",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T15:09:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e2215fe42bff8f6211dfc1df4973f7ce5aff0e43",
          "body": "Fix CI: pin Node 24 and install frontend deps with npm ci",
          "is_bot": false,
          "headline": "Merge pull request #1571 from linuxserver/fix/ci-node-select2",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T15:08:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5247349d33bf51867a28fb32bb794beb56d1d9e4",
          "body": "CI ran `yarn && yarn dev` with no committed yarn.lock, so every run resolved\nthe latest matching versions and dependency drift broke the pipeline in two\nindependent ways:\n\n- select2 4.1.0 added engines.node \">=24\" but the runner used node 22, so\n  `yarn install` failed outright on every pull request\n[…]\ntions/setup-node so the toolchain is explicit rather than tracking\nthe runner default. Also pin select2 to ~4.0.13 in package.json so a future\n`npm install` cannot pull the incompatible 4.1.0 back in.",
          "is_bot": false,
          "headline": "Fix CI: pin Node 24 and install frontend deps with npm ci",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T15:06:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f547ae42bb7483dba5a6ab21454381c0eb012143",
          "body": "get_stats/{id} fataled when the item id was missing and 500'd whenever an\nenhanced app's livestats() threw - a broken or updated remote app definition\n(e.g. Komga) took the whole request down, and the frontend then stopped\nrefreshing that tile entirely.\n\ngetStats now returns valid JSON (200) with an\n[…]\nn the\nitem is missing, has no class, references a stale class, or throws, logging\nthe failure for diagnosis. The successful path is unchanged and returns the\nlivestats output verbatim.\n\nResolves #1558",
          "is_bot": false,
          "headline": "Return graceful output from get_stats instead of a 500",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T14:21:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "881533baa55e38fada050a33419293f8a73a8d3b",
          "body": "Heimdall trusted the incoming X-Forwarded-Host header for URL generation, so\na spoofed value poisoned the page base href, asset() URLs and redirect\ntargets - loading assets from and redirecting to an attacker-controlled host\n(CVE-2025-50578).\n\n- TrustProxies no longer trusts X-Forwarded-Host; a forg\n[…]\nhen set, only the listed hosts are\n  served and any other Host header is rejected. Unset keeps the historic\n  behaviour of serving arbitrary hosts, so existing installs are unaffected.\n\nResolves #1451",
          "is_bot": false,
          "headline": "Harden against host header injection and open redirect",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T13:42:12Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fb9af1b216a537b5bd10680ff83900ccb224d1ad",
          "body": "The export endpoint (api/item) now emits each item's assigned tag titles,\nexcluding the root/default dashboard tag. On import, those titles are\nresolved back to local tags - reusing an existing tag or creating a missing\none - instead of dropping every imported item onto the default dashboard.\n\nTags round-trip by title so a config can be moved between instances without\nhaving to reassign each item to its section by hand.\n\nResolves #1555",
          "is_bot": false,
          "headline": "Include tags in item export and restore them on import",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T13:18:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5907a1f2314725e04b7134355fde4cbde81e1bf9",
          "body": "[2.x] Bound retry and unique-lock lifetimes on UpdateApps and ProcessApps",
          "is_bot": false,
          "headline": "Merge pull request #1559 from JoshSalway/queue-safety-2026-04-22",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T08:35:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "df0eba046b301a75fe1d5d2fc2642d2876be58b3",
          "body": "fix: proxy options in ItemController",
          "is_bot": false,
          "headline": "Merge pull request #1563 from Nyuwb/patch-1",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2026-07-08T08:34:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6a776e30f861716a7511feb5ed4ffa861c9272c9",
          "body": "The correct context is http->proxy :\r\n\r\nhttps://www.php.net/manual/en/context.http.php",
          "is_bot": false,
          "headline": "fix: proxy options in ItemController",
          "author_name": "Fabien Ehrlich",
          "author_login": "Nyuwb",
          "committed_at": "2026-05-13T09:35:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cbf099be2cab07ce9505f18cb20653b36c8dc169",
          "body": "Reproduction-style behavior test, not a regression test, so it does\nnot belong in the main suite. Full test remains in this branch's\ncommit history at 56c53ab9 for reviewers:\n\n    git checkout 56c53ab9 -- tests/Feature/QueueFailedHandlerTest.php\n    vendor/bin/phpunit --filter QueueFailedHandlerTest\n\nKeeps the PR aligned with Heimdall's existing test conventions\n(HTTP-feature tests, no facade-mocking unit tests).",
          "is_bot": false,
          "headline": "Remove QueueFailedHandlerTest from the shipped suite",
          "author_name": "Josh Salway",
          "author_login": "JoshSalway",
          "committed_at": "2026-04-22T10:16:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "56c53ab9c5b938b5916b332fc67df64386269084",
          "body": "Tests that UpdateApps::failed() and ProcessApps::failed():\n - call Log::error with the 'permanently failed' message\n - include exception_class, exception_message, and file context keys\n - for UpdateApps, still call Cache::lock('updateApps')->forceRelease()\n\nUses Log::spy() and Mockery to capture facade calls. 2 tests, 4\nassertions, green on PHP 8.4.20. See follow-up commit for why this\nlands in history but not in the shipped suite.",
          "is_bot": false,
          "headline": "Prove failed() log shape with behavior test",
          "author_name": "Josh Salway",
          "author_login": "JoshSalway",
          "committed_at": "2026-04-22T10:15:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "98b6d96cd1abd91d103c00c9ab9bae874b43448d",
          "body": "Previously logged only the exception message. Adds:\n - exception_class: distinguishes ClientException vs ConnectException\n   vs other Guzzle/PHP failure types at a glance\n - file: file path and line where the exception was raised, useful\n   for distinguishing 'failed inside Guzzle' from 'failed insi\n[…]\nontains the GitHub API URL,\nwhich encodes the app identifier. Capturing the specific appid at\nthe moment of failure would require touching handle() to track the\ncurrent iteration; left as a follow-up.",
          "is_bot": false,
          "headline": "Enrich failed() log context with exception class and file:line",
          "author_name": "Josh Salway",
          "author_login": "JoshSalway",
          "committed_at": "2026-04-22T07:01:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5be7a656774ae1a328feacb31955d7908300af4c",
          "body": "…koff\n\nMost failures for these jobs are GitHub API rate-limit responses;\nretries inside the same window do not help, so one attempt is enough\nand $backoff has nothing to pace.\n\n$timeout would clip the intentionally throttled handle() loop\n(sleep(1) per app) below realistic workloads. Heavy users wit\n[…]\nfig\ngovern is more honest.\n\n$uniqueFor reduced to 600 (10 min) since with $tries=1 +\nworker-governed timeout there is no long retry chain to outlive.\nLock self-heals 10 minutes after a crashed worker.",
          "is_bot": false,
          "headline": "Tighten retry shape: $tries=1, $uniqueFor=600, drop $timeout and $bac…",
          "author_name": "Josh Salway",
          "author_login": "JoshSalway",
          "committed_at": "2026-04-22T06:57:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "44be3cb3196e39bebdf13fd0c097d83524a3ebe9",
          "body": "The test only asserted property values and method_exists. The diff\nitself shows the property values; the test added zero confidence\nbeyond reading the diff. Heimdall is an app, not a package; its\nexisting tests are HTTP feature tests against user behavior, not\nclass-property assertions. Removing this file keeps the PR aligned\nwith the existing test conventions.",
          "is_bot": false,
          "headline": "Drop tests/Feature/QueueSafetyTest.php",
          "author_name": "Josh Salway",
          "author_login": "JoshSalway",
          "committed_at": "2026-04-22T06:56:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "243ad00810238b426acc913cf9b1779f2ff7f4f6",
          "body": "Both jobs implement ShouldBeUnique without a $uniqueFor value, which on\nRedis and database drivers produces a lock that never expires. If the\nworker is killed mid-fire (OOM, SIGKILL, server crash), the lock\npersists and blocks all future dispatches of UpdateApps or ProcessApps\nuntil the cache entry \n[…]\nCache::lock('updateApps')->forceRelease\n                        on UpdateApps)\n\nA new test (tests/Feature/QueueSafetyTest.php) asserts the retry\nproperties are present.\n\nAll existing tests still pass.",
          "is_bot": false,
          "headline": "Bound retry and unique-lock lifetimes on UpdateApps and ProcessApps",
          "author_name": "Josh Salway",
          "author_login": "JoshSalway",
          "committed_at": "2026-04-22T04:55:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7861ae1512fa540fc43a7bf595de9e7f39852a8a",
          "body": "…ider\n\nRemove search provider dropdown when there's only a single provider",
          "is_bot": false,
          "headline": "Merge pull request #1524 from KodeStar/remove_dropdown_on_single_prov…",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-11-11T12:05:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "66dfe95c9f141e4f3cfa583fde360e116f7d9fbf",
          "body": null,
          "is_bot": false,
          "headline": "Fix lint issue",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-11-11T12:02:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "130661bd341114cf052db5bf69ffdca77648fc20",
          "body": "Resolves #1509",
          "is_bot": false,
          "headline": "Remove search provider dropdown when there's only a single provider",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-11-11T12:00:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "900fc83e79e4c86e4b97068aa70c284409753ba4",
          "body": "Add autocomplete suggestions support",
          "is_bot": false,
          "headline": "Merge pull request #1523 from KodeStar/add_autocomplete_suggestions",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-11-11T11:43:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4f30332854aecf21dc9c149b0cc02b1cb5a95d4c",
          "body": null,
          "is_bot": false,
          "headline": "Fix lint issues",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-11-11T11:42:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "852c231724c8eaf82174b0c6e5db5028d9899a5c",
          "body": "…nd google",
          "is_bot": false,
          "headline": "Add autocomplete suggestions support and added to bing, duckduckgo, a…",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-11-11T11:39:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "045bdf0debfd4d3828dca96af3aed582a8598c30",
          "body": "Fix tag list url when tags are treated as tags",
          "is_bot": false,
          "headline": "Merge pull request #1507 from KodeStar/taglist",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-09-16T08:53:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "755c3e59e14b327ff3c332c3d1f6aeac40fc8756",
          "body": null,
          "is_bot": false,
          "headline": "Fix tag list url when tags are treated as tags",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-09-16T08:50:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "32bf1d034f1d801cca68f05b0430718b0f4b173c",
          "body": null,
          "is_bot": false,
          "headline": "Add password field to fix #1498",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-09-15T15:49:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6d12c547e796995faea6a94fbdddaf11ccf12b11",
          "body": null,
          "is_bot": false,
          "headline": "Add password field",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-09-15T15:42:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ae4ce92dabbfa380ce351b76142c570c5f86441f",
          "body": "Add current background maxsize #1501",
          "is_bot": false,
          "headline": "Merge pull request #1503 from KodeStar/background_max_file_size",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-09-15T15:28:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "966279b25220f21d707fea9a6cf0528863a3236e",
          "body": "Update app.php",
          "is_bot": false,
          "headline": "Merge pull request #1499 from webmogul1/patch-1",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-09-15T15:28:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "54cf2b88ca3164c1123c21c97850835f1bc039ae",
          "body": null,
          "is_bot": false,
          "headline": "Update application version to 2.7.6",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-09-15T15:28:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "31f1ba8192a079af532770938b717b8e2c7dc2d1",
          "body": null,
          "is_bot": false,
          "headline": "Add current background maxsize #1501",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-09-15T15:26:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "eadd9d1dd80076d9677688b1dd7f1ef39d3370bf",
          "body": "Change version to 2.7.5",
          "is_bot": false,
          "headline": "Update app.php",
          "author_name": "webmogul1",
          "author_login": "webmogul1",
          "committed_at": "2025-09-11T18:46:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c9ea2cdeb3aa558b6763b7644ca57e57d9ffbb58",
          "body": "…with_no_password\n\nUpdate items with no password",
          "is_bot": false,
          "headline": "Merge pull request #1496 from KodeStar/bugfix/update_proxy_and_items_…",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-09-10T15:15:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "517f51ba90b63004e9be91a91457467f9d1236f8",
          "body": null,
          "is_bot": false,
          "headline": "Update items with no password",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-09-10T15:14:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "825f67a4a4ea071fb31a35cd5422f28eb1c5e940",
          "body": "feat(icon-upload): proxy management",
          "is_bot": false,
          "headline": "Merge pull request #1480 from Nyuwb/patch-1",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-09-10T14:15:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "05a552ffcff8ac91322363e72e69476d19edefe1",
          "body": "Fixed multiple typos (German translation)",
          "is_bot": false,
          "headline": "Merge pull request #1475 from micvog/fix-german-translation",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-09-10T14:14:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ad4584e548c63cc94443292679312039692464ef",
          "body": null,
          "is_bot": false,
          "headline": "Merge pull request #1488 from linuxserver/inherit-security-md",
          "author_name": "Adam",
          "author_login": "thespad",
          "committed_at": "2025-08-23T14:22:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7d93099f2c50b7f9a45463136621cdda8f807f12",
          "body": "Inherit LSIO standard security.md from https://github.com/linuxserver/.github/blob/main/SECURITY.md",
          "is_bot": false,
          "headline": "Delete SECURITY.md",
          "author_name": "Adam",
          "author_login": "thespad",
          "committed_at": "2025-08-23T14:20:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "31ca05f74f8a6b04c2f2955dd7a1f6191ee1a573",
          "body": "Fix for some enhanced apps not working",
          "is_bot": false,
          "headline": "Merge pull request #1483 from KodeStar/2.x",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-08-02T16:50:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cd95fc3b9248b85e01089bdc26f9ee0fb445f9e9",
          "body": null,
          "is_bot": false,
          "headline": "Update search test",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-08-02T16:43:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "63e777b338f830508475804582871472c06f7238",
          "body": null,
          "is_bot": false,
          "headline": "Redirect to search provider without error fixes #1482",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-08-02T16:40:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fd926e983de0524ba92725c25ff6c70e8abdd19b",
          "body": null,
          "is_bot": false,
          "headline": "Fix for some enhanced apps not working",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-08-02T16:17:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dce37c14121d96675c169f305d90ba488dc7ef83",
          "body": null,
          "is_bot": false,
          "headline": "feat(icon-upload): proxy management",
          "author_name": "Fabien Ehrlich",
          "author_login": "Nyuwb",
          "committed_at": "2025-07-31T14:54:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6b9f61b0e672c37b807ff338e1a3fdaa8f39a8a6",
          "body": "Escape search queries and add setting value on edit",
          "is_bot": false,
          "headline": "Merge pull request #1477 from KodeStar/2.x",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-07-24T18:06:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d1a96dd752ba30dc56380400dd2587d8abb8e9d1",
          "body": null,
          "is_bot": false,
          "headline": "Escape search queries and add setting value on edit",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-07-24T18:05:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1ccc0da2a725b5db99a7e1792c60bb7836dd3883",
          "body": "Load in configs values if class has been lost",
          "is_bot": false,
          "headline": "Merge pull request #1476 from KodeStar/2.x",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-07-22T14:59:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "41aa255b88fd93b919d539796d639f7b603f5e7e",
          "body": null,
          "is_bot": false,
          "headline": "Add missing variable",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-07-22T14:57:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a8e4ab448b27db655d55958e389d7b7ea1cd67e9",
          "body": null,
          "is_bot": false,
          "headline": "Load in configs values if class has been lost",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-07-22T14:50:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "31db31d0f7dd85386946107360c6e87c183b344f",
          "body": null,
          "is_bot": false,
          "headline": "Fixed multiple typos (German translation)",
          "author_name": "micvog",
          "author_login": "micvog",
          "committed_at": "2025-07-21T15:37:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e42f78bd490a64742327d20f8110bf7127388791",
          "body": "Add misisng input type in the form builder",
          "is_bot": false,
          "headline": "Merge pull request #1473 from KodeStar/2.x",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-07-21T09:12:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "08b8ab6d4fc1e061bfeb159eb542f282892e2b23",
          "body": null,
          "is_bot": false,
          "headline": "Add misisng input type in the form builder",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-07-21T09:10:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "57e0a335b7a6113582be8d196166e65bf83d7c57",
          "body": "Add cache table",
          "is_bot": false,
          "headline": "Merge pull request #1471 from KodeStar/2.x",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-07-17T13:46:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0d90170385eac37006c7cafbe21f50e52d8fd3e2",
          "body": null,
          "is_bot": false,
          "headline": "Add cache table",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-07-17T13:43:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "abe08a7b048a03b0e450e17685af43c5e1cb40a3",
          "body": "Fix importing apps and logging in",
          "is_bot": false,
          "headline": "Merge pull request #1470 from KodeStar/2.x",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-07-17T13:23:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6075dcca2d17eb64ccf07660e7240a027c73fba5",
          "body": null,
          "is_bot": false,
          "headline": "Fix importing apps and logging in",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-07-17T13:19:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4fa41d8114fbbd9e7c8a37ec82844a414ca8497b",
          "body": "Add tests and fix user edit form",
          "is_bot": false,
          "headline": "Merge pull request #1469 from KodeStar/2.x",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-07-15T16:10:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1e6b1f6de526b796ee9970bb91879d3aff166f26",
          "body": null,
          "is_bot": false,
          "headline": "Add tests and fix user edit form",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-07-15T16:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "53fd6242db038cd3451447efaad5aafa5436a703",
          "body": "Fixes to reduce the SSRF attack vector plus display image names",
          "is_bot": false,
          "headline": "Merge pull request #1467 from KodeStar/2.x",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-07-14T10:15:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "69bc8cb34e879e74169a227771813ae28f2b1cc3",
          "body": null,
          "is_bot": false,
          "headline": "Fixes to reduce the SSRF attack vector.",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-07-13T18:06:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0388ee939a7949530d0df8c4cb2bb53147b1ee45",
          "body": "Fix uploads and displaying of malicious SVG files",
          "is_bot": false,
          "headline": "Merge pull request #1466 from KodeStar/2.x",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-07-13T16:02:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2df58472a14fa315dcedac42ee428e4044b4551b",
          "body": null,
          "is_bot": false,
          "headline": "Fix uploads and displaying of malicious SVG files",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-07-13T16:00:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "abbc78ee8dadbdc985804fd7c1843cb5f25cad29",
          "body": "Update framework to laravel 11 and fix images with no extension causing error 500",
          "is_bot": false,
          "headline": "Merge pull request #1464 from KodeStar/2.x",
          "author_name": "KodeStar",
          "author_login": "KodeStar",
          "committed_at": "2025-07-11T15:36:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d1801d1088c2fc7174006c04808761e2b91389f7",
          "body": null,
          "is_bot": false,
          "headline": "Update cache version",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-07-11T15:33:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "22f66d35e55069488cbba95d3fef6f89eb952da8",
          "body": null,
          "is_bot": false,
          "headline": "Throw error if image doesn't have an extension #1446",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-07-11T15:19:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f197aeb013672f491419b60c5c0b56059be3ec66",
          "body": null,
          "is_bot": false,
          "headline": "Fix forms on enhanced apps",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-07-11T15:18:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8fb643825497a71631d60a1212cefe05a90c3045",
          "body": null,
          "is_bot": false,
          "headline": "Updates to vendors etc",
          "author_name": "Chris Hunt",
          "author_login": null,
          "committed_at": "2025-07-11T14:57:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 88,
      "commits_last_year": 77,
      "latest_release_at": "2026-07-09T21:59:01Z",
      "latest_release_tag": "v2.8.1",
      "releases_from_tags": false,
      "days_since_last_push": 14,
      "active_weeks_last_year": 10,
      "days_since_latest_release": 15,
      "mean_days_between_releases": 67.9
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 75,
      "has_issue_template": false,
      "has_code_of_conduct": true,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "laravel/laravel",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "framework",
            "laravel"
          ],
          "ecosystem": "packagist",
          "matches_repo": false,
          "registry_url": "https://packagist.org/packages/laravel/laravel",
          "is_deprecated": false,
          "latest_version": "v13.8.0",
          "repository_url": "https://github.com/laravel/laravel",
          "versions_count": 264,
          "total_downloads": 63695890,
          "dependents_count": 1158,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": 654305,
          "first_published_at": null,
          "latest_published_at": "2026-05-25T23:11:52Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 60
        }
      ]
    },
    "popularity": {
      "forks": 614,
      "stars": 9279,
      "watchers": 84,
      "fork_history": {
        "days": [
          {
            "date": "2018-02-07",
            "count": 2
          },
          {
            "date": "2018-02-12",
            "count": 1
          },
          {
            "date": "2018-02-13",
            "count": 1
          },
          {
            "date": "2018-02-16",
            "count": 1
          },
          {
            "date": "2018-02-22",
            "count": 2
          },
          {
            "date": "2018-02-27",
            "count": 1
          },
          {
            "date": "2018-03-20",
            "count": 1
          },
          {
            "date": "2018-03-25",
            "count": 1
          },
          {
            "date": "2018-03-30",
            "count": 1
          },
          {
            "date": "2018-04-01",
            "count": 1
          },
          {
            "date": "2018-04-11",
            "count": 1
          },
          {
            "date": "2018-05-01",
            "count": 1
          },
          {
            "date": "2018-05-31",
            "count": 1
          },
          {
            "date": "2018-06-01",
            "count": 1
          },
          {
            "date": "2018-06-03",
            "count": 1
          },
          {
            "date": "2018-06-07",
            "count": 1
          },
          {
            "date": "2018-06-19",
            "count": 1
          },
          {
            "date": "2018-06-27",
            "count": 1
          },
          {
            "date": "2018-07-10",
            "count": 2
          },
          {
            "date": "2018-07-19",
            "count": 1
          },
          {
            "date": "2018-07-30",
            "count": 1
          },
          {
            "date": "2018-08-10",
            "count": 1
          },
          {
            "date": "2018-08-25",
            "count": 1
          },
          {
            "date": "2018-09-02",
            "count": 1
          },
          {
            "date": "2018-09-10",
            "count": 1
          },
          {
            "date": "2018-10-12",
            "count": 1
          },
          {
            "date": "2018-10-30",
            "count": 1
          },
          {
            "date": "2018-10-31",
            "count": 1
          },
          {
            "date": "2018-11-23",
            "count": 1
          },
          {
            "date": "2018-12-04",
            "count": 1
          },
          {
            "date": "2018-12-19",
            "count": 1
          },
          {
            "date": "2019-01-03",
            "count": 3
          },
          {
            "date": "2019-01-04",
            "count": 1
          },
          {
            "date": "2019-01-23",
            "count": 1
          },
          {
            "date": "2019-01-24",
            "count": 1
          },
          {
            "date": "2019-02-02",
            "count": 1
          },
          {
            "date": "2019-02-24",
            "count": 1
          },
          {
            "date": "2019-03-05",
            "count": 1
          },
          {
            "date": "2019-03-06",
            "count": 1
          },
          {
            "date": "2019-03-13",
            "count": 1
          },
          {
            "date": "2019-03-14",
            "count": 1
          },
          {
            "date": "2019-03-18",
            "count": 1
          },
          {
            "date": "2019-04-06",
            "count": 1
          },
          {
            "date": "2019-04-08",
            "count": 1
          },
          {
            "date": "2019-04-12",
            "count": 1
          },
          {
            "date": "2019-04-15",
            "count": 1
          },
          {
            "date": "2019-04-22",
            "count": 1
          },
          {
            "date": "2019-05-06",
            "count": 1
          },
          {
            "date": "2019-05-11",
            "count": 1
          },
          {
            "date": "2019-05-20",
            "count": 1
          },
          {
            "date": "2019-06-08",
            "count": 1
          },
          {
            "date": "2019-06-09",
            "count": 1
          },
          {
            "date": "2019-06-12",
            "count": 1
          },
          {
            "date": "2019-06-17",
            "count": 1
          },
          {
            "date": "2019-06-24",
            "count": 1
          },
          {
            "date": "2019-06-26",
            "count": 1
          },
          {
            "date": "2019-07-01",
            "count": 1
          },
          {
            "date": "2019-07-04",
            "count": 1
          },
          {
            "date": "2019-07-16",
            "count": 1
          },
          {
            "date": "2019-07-31",
            "count": 1
          },
          {
            "date": "2019-08-02",
            "count": 1
          },
          {
            "date": "2019-08-06",
            "count": 1
          },
          {
            "date": "2019-08-22",
            "count": 1
          },
          {
            "date": "2019-08-25",
            "count": 1
          },
          {
            "date": "2019-08-26",
            "count": 1
          },
          {
            "date": "2019-08-31",
            "count": 1
          },
          {
            "date": "2019-09-11",
            "count": 1
          },
          {
            "date": "2019-09-19",
            "count": 1
          },
          {
            "date": "2019-09-20",
            "count": 1
          },
          {
            "date": "2019-09-22",
            "count": 1
          },
          {
            "date": "2019-10-09",
            "count": 1
          },
          {
            "date": "2019-10-12",
            "count": 1
          },
          {
            "date": "2019-10-13",
            "count": 1
          },
          {
            "date": "2019-11-10",
            "count": 1
          },
          {
            "date": "2019-11-14",
            "count": 1
          },
          {
            "date": "2019-11-15",
            "count": 2
          },
          {
            "date": "2019-11-22",
            "count": 1
          },
          {
            "date": "2019-11-30",
            "count": 1
          },
          {
            "date": "2019-12-17",
            "count": 1
          },
          {
            "date": "2019-12-25",
            "count": 1
          },
          {
            "date": "2019-12-27",
            "count": 1
          },
          {
            "date": "2020-01-04",
            "count": 1
          },
          {
            "date": "2020-01-09",
            "count": 1
          },
          {
            "date": "2020-01-11",
            "count": 2
          },
          {
            "date": "2020-01-13",
            "count": 2
          },
          {
            "date": "2020-02-01",
            "count": 1
          },
          {
            "date": "2020-02-04",
            "count": 1
          },
          {
            "date": "2020-02-20",
            "count": 1
          },
          {
            "date": "2020-02-22",
            "count": 1
          },
          {
            "date": "2020-02-24",
            "count": 1
          },
          {
            "date": "2020-02-27",
            "count": 1
          },
          {
            "date": "2020-02-29",
            "count": 1
          },
          {
            "date": "2020-03-05",
            "count": 1
          },
          {
            "date": "2020-03-08",
            "count": 1
          },
          {
            "date": "2020-03-10",
            "count": 1
          },
          {
            "date": "2020-03-11",
            "count": 1
          },
          {
            "date": "2020-03-18",
            "count": 1
          },
          {
            "date": "2020-03-19",
            "count": 1
          },
          {
            "date": "2020-03-20",
            "count": 1
          },
          {
            "date": "2020-03-21",
            "count": 1
          },
          {
            "date": "2020-03-23",
            "count": 1
          },
          {
            "date": "2020-03-31",
            "count": 1
          },
          {
            "date": "2020-04-14",
            "count": 1
          },
          {
            "date": "2020-04-20",
            "count": 1
          },
          {
            "date": "2020-04-21",
            "count": 1
          },
          {
            "date": "2020-04-22",
            "count": 1
          },
          {
            "date": "2020-04-23",
            "count": 1
          },
          {
            "date": "2020-04-26",
            "count": 1
          },
          {
            "date": "2020-04-27",
            "count": 1
          },
          {
            "date": "2020-05-06",
            "count": 1
          },
          {
            "date": "2020-05-07",
            "count": 1
          },
          {
            "date": "2020-05-12",
            "count": 1
          },
          {
            "date": "2020-05-13",
            "count": 1
          },
          {
            "date": "2020-05-14",
            "count": 1
          },
          {
            "date": "2020-05-17",
            "count": 2
          },
          {
            "date": "2020-05-19",
            "count": 1
          },
          {
            "date": "2020-05-22",
            "count": 1
          },
          {
            "date": "2020-05-26",
            "count": 1
          },
          {
            "date": "2020-05-29",
            "count": 2
          },
          {
            "date": "2020-06-15",
            "count": 1
          },
          {
            "date": "2020-06-17",
            "count": 1
          },
          {
            "date": "2020-06-20",
            "count": 1
          },
          {
            "date": "2020-06-22",
            "count": 1
          },
          {
            "date": "2020-07-02",
            "count": 1
          },
          {
            "date": "2020-07-14",
            "count": 1
          },
          {
            "date": "2020-07-20",
            "count": 1
          },
          {
            "date": "2020-07-21",
            "count": 1
          },
          {
            "date": "2020-07-22",
            "count": 1
          },
          {
            "date": "2020-07-28",
            "count": 1
          },
          {
            "date": "2020-08-01",
            "count": 1
          },
          {
            "date": "2020-08-10",
            "count": 1
          },
          {
            "date": "2020-08-11",
            "count": 1
          },
          {
            "date": "2020-08-21",
            "count": 2
          },
          {
            "date": "2020-08-25",
            "count": 1
          },
          {
            "date": "2020-09-02",
            "count": 1
          },
          {
            "date": "2020-09-15",
            "count": 1
          },
          {
            "date": "2020-09-30",
            "count": 1
          },
          {
            "date": "2020-10-03",
            "count": 1
          },
          {
            "date": "2020-10-07",
            "count": 2
          },
          {
            "date": "2020-10-15",
            "count": 1
          },
          {
            "date": "2020-10-16",
            "count": 1
          },
          {
            "date": "2020-10-20",
            "count": 1
          },
          {
            "date": "2020-10-24",
            "count": 1
          },
          {
            "date": "2020-10-29",
            "count": 1
          },
          {
            "date": "2020-11-16",
            "count": 1
          },
          {
            "date": "2020-11-18",
            "count": 1
          },
          {
            "date": "2020-11-28",
            "count": 1
          },
          {
            "date": "2020-11-29",
            "count": 2
          },
          {
            "date": "2020-12-06",
            "count": 1
          },
          {
            "date": "2020-12-10",
            "count": 1
          },
          {
            "date": "2020-12-18",
            "count": 1
          },
          {
            "date": "2020-12-24",
            "count": 1
          },
          {
            "date": "2020-12-29",
            "count": 1
          },
          {
            "date": "2020-12-30",
            "count": 2
          },
          {
            "date": "2021-01-07",
            "count": 1
          },
          {
            "date": "2021-01-08",
            "count": 1
          },
          {
            "date": "2021-01-14",
            "count": 1
          },
          {
            "date": "2021-01-23",
            "count": 1
          },
          {
            "date": "2021-01-28",
            "count": 1
          },
          {
            "date": "2021-02-07",
            "count": 1
          },
          {
            "date": "2021-02-12",
            "count": 1
          },
          {
            "date": "2021-02-17",
            "count": 1
          },
          {
            "date": "2021-02-21",
            "count": 1
          },
          {
            "date": "2021-02-22",
            "count": 1
          },
          {
            "date": "2021-03-06",
            "count": 1
          },
          {
            "date": "2021-03-18",
            "count": 2
          },
          {
            "date": "2021-04-16",
            "count": 1
          },
          {
            "date": "2021-04-21",
            "count": 1
          },
          {
            "date": "2021-04-22",
            "count": 1
          },
          {
            "date": "2021-04-23",
            "count": 1
          },
          {
            "date": "2021-04-26",
            "count": 1
          },
          {
            "date": "2021-04-29",
            "count": 2
          },
          {
            "date": "2021-05-01",
            "count": 3
          },
          {
            "date": "2021-05-06",
            "count": 1
          },
          {
            "date": "2021-05-09",
            "count": 1
          },
          {
            "date": "2021-05-10",
            "count": 1
          },
          {
            "date": "2021-05-15",
            "count": 1
          },
          {
            "date": "2021-05-19",
            "count": 1
          },
          {
            "date": "2021-05-22",
            "count": 1
          },
          {
            "date": "2021-05-23",
            "count": 1
          },
          {
            "date": "2021-05-31",
            "count": 1
          },
          {
            "date": "2021-06-02",
            "count": 1
          },
          {
            "date": "2021-06-03",
            "count": 1
          },
          {
            "date": "2021-06-04",
            "count": 1
          },
          {
            "date": "2021-06-07",
            "count": 1
          },
          {
            "date": "2021-06-09",
            "count": 1
          },
          {
            "date": "2021-06-11",
            "count": 1
          },
          {
            "date": "2021-06-19",
            "count": 2
          },
          {
            "date": "2021-06-21",
            "count": 1
          },
          {
            "date": "2021-06-26",
            "count": 1
          },
          {
            "date": "2021-06-30",
            "count": 1
          },
          {
            "date": "2021-07-01",
            "count": 1
          },
          {
            "date": "2021-07-08",
            "count": 1
          },
          {
            "date": "2021-07-26",
            "count": 2
          },
          {
            "date": "2021-07-27",
            "count": 1
          },
          {
            "date": "2021-07-29",
            "count": 1
          },
          {
            "date": "2021-08-16",
            "count": 2
          },
          {
            "date": "2021-08-17",
            "count": 1
          },
          {
            "date": "2021-08-28",
            "count": 1
          },
          {
            "date": "2021-08-29",
            "count": 1
          },
          {
            "date": "2021-08-31",
            "count": 1
          },
          {
            "date": "2021-09-03",
            "count": 2
          },
          {
            "date": "2021-09-09",
            "count": 2
          },
          {
            "date": "2021-09-12",
            "count": 1
          },
          {
            "date": "2021-09-14",
            "count": 1
          },
          {
            "date": "2021-09-16",
            "count": 1
          },
          {
            "date": "2021-09-22",
            "count": 2
          },
          {
            "date": "2021-09-24",
            "count": 1
          },
          {
            "date": "2021-10-07",
            "count": 1
          },
          {
            "date": "2021-10-12",
            "count": 1
          },
          {
            "date": "2021-10-24",
            "count": 1
          },
          {
            "date": "2021-10-29",
            "count": 1
          },
          {
            "date": "2021-11-06",
            "count": 1
          },
          {
            "date": "2021-11-08",
            "count": 1
          },
          {
            "date": "2021-11-10",
            "count": 1
          },
          {
            "date": "2021-11-12",
            "count": 1
          },
          {
            "date": "2021-11-15",
            "count": 1
          },
          {
            "date": "2021-11-22",
            "count": 1
          },
          {
            "date": "2021-11-25",
            "count": 1
          },
          {
            "date": "2021-11-28",
            "count": 1
          },
          {
            "date": "2021-12-03",
            "count": 1
          },
          {
            "date": "2021-12-09",
            "count": 1
          },
          {
            "date": "2021-12-11",
            "count": 1
          },
          {
            "date": "2021-12-18",
            "count": 1
          },
          {
            "date": "2021-12-29",
            "count": 2
          },
          {
            "date": "2021-12-30",
            "count": 1
          },
          {
            "date": "2021-12-31",
            "count": 1
          },
          {
            "date": "2022-01-03",
            "count": 1
          },
          {
            "date": "2022-01-04",
            "count": 3
          },
          {
            "date": "2022-01-06",
            "count": 1
          },
          {
            "date": "2022-01-14",
            "count": 2
          },
          {
            "date": "2022-01-15",
            "count": 1
          },
          {
            "date": "2022-01-18",
            "count": 1
          },
          {
            "date": "2022-01-19",
            "count": 1
          },
          {
            "date": "2022-01-22",
            "count": 1
          },
          {
            "date": "2022-01-23",
            "count": 1
          },
          {
            "date": "2022-01-25",
            "count": 2
          },
          {
            "date": "2022-01-28",
            "count": 1
          },
          {
            "date": "2022-02-01",
            "count": 1
          },
          {
            "date": "2022-02-08",
            "count": 1
          },
          {
            "date": "2022-02-10",
            "count": 1
          },
          {
            "date": "2022-02-12",
            "count": 1
          },
          {
            "date": "2022-02-13",
            "count": 1
          },
          {
            "date": "2022-02-15",
            "count": 1
          },
          {
            "date": "2022-02-16",
            "count": 1
          },
          {
            "date": "2022-02-19",
            "count": 1
          },
          {
            "date": "2022-02-22",
            "count": 1
          },
          {
            "date": "2022-02-25",
            "count": 1
          },
          {
            "date": "2022-02-27",
            "count": 2
          },
          {
            "date": "2022-03-02",
            "count": 1
          },
          {
            "date": "2022-03-04",
            "count": 2
          },
          {
            "date": "2022-03-05",
            "count": 1
          },
          {
            "date": "2022-03-10",
            "count": 2
          },
          {
            "date": "2022-03-13",
            "count": 1
          },
          {
            "date": "2022-03-14",
            "count": 1
          },
          {
            "date": "2022-03-17",
            "count": 1
          },
          {
            "date": "2022-03-19",
            "count": 1
          },
          {
            "date": "2022-03-20",
            "count": 1
          },
          {
            "date": "2022-03-21",
            "count": 1
          },
          {
            "date": "2022-03-24",
            "count": 3
          },
          {
            "date": "2022-03-25",
            "count": 1
          },
          {
            "date": "2022-03-27",
            "count": 1
          },
          {
            "date": "2022-03-28",
            "count": 1
          },
          {
            "date": "2022-03-30",
            "count": 2
          },
          {
            "date": "2022-04-02",
            "count": 1
          },
          {
            "date": "2022-04-04",
            "count": 2
          },
          {
            "date": "2022-04-06",
            "count": 1
          },
          {
            "date": "2022-04-07",
            "count": 2
          },
          {
            "date": "2022-04-08",
            "count": 1
          },
          {
            "date": "2022-04-14",
            "count": 1
          },
          {
            "date": "2022-04-19",
            "count": 1
          },
          {
            "date": "2022-04-25",
            "count": 1
          },
          {
            "date": "2022-04-26",
            "count": 1
          },
          {
            "date": "2022-04-30",
            "count": 1
          },
          {
            "date": "2022-05-04",
            "count": 1
          },
          {
            "date": "2022-05-06",
            "count": 1
          },
          {
            "date": "2022-05-12",
            "count": 2
          },
          {
            "date": "2022-05-14",
            "count": 1
          },
          {
            "date": "2022-05-15",
            "count": 1
          },
          {
            "date": "2022-05-17",
            "count": 2
          },
          {
            "date": "2022-05-27",
            "count": 2
          },
          {
            "date": "2022-05-29",
            "count": 1
          },
          {
            "date": "2022-06-02",
            "count": 1
          },
          {
            "date": "2022-06-07",
            "count": 1
          },
          {
            "date": "2022-06-10",
            "count": 1
          },
          {
            "date": "2022-06-21",
            "count": 1
          },
          {
            "date": "2022-06-27",
            "count": 1
          },
          {
            "date": "2022-07-08",
            "count": 1
          },
          {
            "date": "2022-07-10",
            "count": 1
          },
          {
            "date": "2022-07-13",
            "count": 1
          },
          {
            "date": "2022-07-16",
            "count": 1
          },
          {
            "date": "2022-07-21",
            "count": 1
          },
          {
            "date": "2022-07-27",
            "count": 1
          },
          {
            "date": "2022-07-29",
            "count": 1
          },
          {
            "date": "2022-08-17",
            "count": 1
          },
          {
            "date": "2022-09-01",
            "count": 1
          },
          {
            "date": "2022-09-05",
            "count": 1
          },
          {
            "date": "2022-09-11",
            "count": 1
          },
          {
            "date": "2022-09-17",
            "count": 1
          },
          {
            "date": "2022-09-19",
            "count": 1
          },
          {
            "date": "2022-09-20",
            "count": 1
          },
          {
            "date": "2022-09-23",
            "count": 1
          },
          {
            "date": "2022-10-01",
            "count": 1
          },
          {
            "date": "2022-10-04",
            "count": 1
          },
          {
            "date": "2022-10-05",
            "count": 2
          },
          {
            "date": "2022-10-06",
            "count": 2
          },
          {
            "date": "2022-10-09",
            "count": 1
          },
          {
            "date": "2022-10-10",
            "count": 1
          },
          {
            "date": "2022-10-13",
            "count": 2
          },
          {
            "date": "2022-10-14",
            "count": 3
          },
          {
            "date": "2022-10-16",
            "count": 1
          },
          {
            "date": "2022-10-22",
            "count": 1
          },
          {
            "date": "2022-10-23",
            "count": 1
          },
          {
            "date": "2022-10-26",
            "count": 1
          },
          {
            "date": "2022-10-28",
            "count": 3
          },
          {
            "date": "2022-11-02",
            "count": 1
          },
          {
            "date": "2022-11-06",
            "count": 1
          },
          {
            "date": "2022-11-16",
            "count": 1
          },
          {
            "date": "2022-11-17",
            "count": 1
          },
          {
            "date": "2022-12-06",
            "count": 1
          },
          {
            "date": "2022-12-08",
            "count": 1
          },
          {
            "date": "2022-12-09",
            "count": 3
          },
          {
            "date": "2022-12-10",
            "count": 1
          },
          {
            "date": "2022-12-13",
            "count": 1
          },
          {
            "date": "2022-12-18",
            "count": 1
          },
          {
            "date": "2022-12-20",
            "count": 1
          },
          {
            "date": "2022-12-22",
            "count": 1
          },
          {
            "date": "2022-12-28",
            "count": 1
          },
          {
            "date": "2022-12-29",
            "count": 1
          },
          {
            "date": "2023-01-02",
            "count": 2
          },
          {
            "date": "2023-01-11",
            "count": 1
          },
          {
            "date": "2023-01-17",
            "count": 1
          },
          {
            "date": "2023-01-19",
            "count": 1
          },
          {
            "date": "2023-01-22",
            "count": 1
          },
          {
            "date": "2023-01-26",
            "count": 1
          },
          {
            "date": "2023-01-27",
            "count": 1
          },
          {
            "date": "2023-02-02",
            "count": 1
          },
          {
            "date": "2023-02-07",
            "count": 1
          },
          {
            "date": "2023-02-08",
            "count": 1
          },
          {
            "date": "2023-02-09",
            "count": 2
          },
          {
            "date": "2023-02-13",
            "count": 1
          },
          {
            "date": "2023-02-18",
            "count": 1
          },
          {
            "date": "2023-02-19",
            "count": 1
          },
          {
            "date": "2023-02-22",
            "count": 2
          },
          {
            "date": "2023-02-26",
            "count": 1
          },
          {
            "date": "2023-02-28",
            "count": 1
          },
          {
            "date": "2023-03-06",
            "count": 1
          },
          {
            "date": "2023-03-09",
            "count": 1
          },
          {
            "date": "2023-03-16",
            "count": 1
          },
          {
            "date": "2023-03-19",
            "count": 1
          },
          {
            "date": "2023-03-26",
            "count": 1
          },
          {
            "date": "2023-03-28",
            "count": 1
          },
          {
            "date": "2023-04-20",
            "count": 1
          },
          {
            "date": "2023-04-21",
            "count": 1
          },
          {
            "date": "2023-04-23",
            "count": 1
          },
          {
            "date": "2023-04-24",
            "count": 1
          },
          {
            "date": "2023-04-29",
            "count": 1
          },
          {
            "date": "2023-05-04",
            "count": 1
          },
          {
            "date": "2023-05-06",
            "count": 1
          },
          {
            "date": "2023-05-10",
            "count": 1
          },
          {
            "date": "2023-05-14",
            "count": 1
          },
          {
            "date": "2023-05-15",
            "count": 1
          },
          {
            "date": "2023-05-17",
            "count": 3
          },
          {
            "date": "2023-05-19",
            "count": 2
          },
          {
            "date": "2023-05-21",
            "count": 2
          },
          {
            "date": "2023-05-29",
            "count": 1
          },
          {
            "date": "2023-06-05",
            "count": 1
          },
          {
            "date": "2023-06-06",
            "count": 1
          },
          {
            "date": "2023-06-22",
            "count": 1
          },
          {
            "date": "2023-07-11",
            "count": 1
          },
          {
            "date": "2023-07-15",
            "count": 1
          },
          {
            "date": "2023-07-16",
            "count": 1
          },
          {
            "date": "2023-07-19",
            "count": 1
          },
          {
            "date": "2023-07-24",
            "count": 1
          },
          {
            "date": "2023-08-12",
            "count": 1
          },
          {
            "date": "2023-08-22",
            "count": 1
          },
          {
            "date": "2023-08-27",
            "count": 1
          },
          {
            "date": "2023-08-30",
            "count": 1
          },
          {
            "date": "2023-09-09",
            "count": 1
          },
          {
            "date": "2023-09-24",
            "count": 1
          },
          {
            "date": "2023-09-26",
            "count": 1
          },
          {
            "date": "2023-09-28",
            "count": 1
          },
          {
            "date": "2023-10-02",
            "count": 1
          },
          {
            "date": "2023-10-09",
            "count": 1
          },
          {
            "date": "2023-10-20",
            "count": 1
          },
          {
            "date": "2023-10-27",
            "count": 1
          },
          {
            "date": "2023-11-09",
            "count": 1
          },
          {
            "date": "2023-11-17",
            "count": 1
          },
          {
            "date": "2023-11-22",
            "count": 1
          },
          {
            "date": "2023-11-30",
            "count": 1
          },
          {
            "date": "2023-12-03",
            "count": 1
          },
          {
            "date": "2023-12-10",
            "count": 1
          },
          {
            "date": "2023-12-23",
            "count": 1
          },
          {
            "date": "2023-12-30",
            "count": 1
          },
          {
            "date": "2023-12-31",
            "count": 1
          },
          {
            "date": "2024-01-05",
            "count": 1
          },
          {
            "date": "2024-01-12",
            "count": 1
          },
          {
            "date": "2024-01-13",
            "count": 1
          },
          {
            "date": "2024-01-26",
            "count": 1
          },
          {
            "date": "2024-01-27",
            "count": 1
          },
          {
            "date": "2024-02-02",
            "count": 1
          },
          {
            "date": "2024-02-03",
            "count": 1
          },
          {
            "date": "2024-02-12",
            "count": 1
          },
          {
            "date": "2024-02-16",
            "count": 1
          },
          {
            "date": "2024-02-22",
            "count": 1
          },
          {
            "date": "2024-02-23",
            "count": 1
          },
          {
            "date": "2024-02-28",
            "count": 1
          },
          {
            "date": "2024-03-08",
            "count": 1
          },
          {
            "date": "2024-03-22",
            "count": 1
          },
          {
            "date": "2024-04-07",
            "count": 1
          },
          {
            "date": "2024-04-19",
            "count": 2
          },
          {
            "date": "2024-04-23",
            "count": 1
          },
          {
            "date": "2024-04-27",
            "count": 1
          },
          {
            "date": "2024-05-25",
            "count": 1
          },
          {
            "date": "2024-05-26",
            "count": 1
          },
          {
            "date": "2024-06-05",
            "count": 1
          },
          {
            "date": "2024-06-13",
            "count": 1
          },
          {
            "date": "2024-06-15",
            "count": 1
          },
          {
            "date": "2024-06-20",
            "count": 1
          },
          {
            "date": "2024-06-22",
            "count": 1
          },
          {
            "date": "2024-06-30",
            "count": 1
          },
          {
            "date": "2024-07-02",
            "count": 1
          },
          {
            "date": "2024-07-03",
            "count": 1
          },
          {
            "date": "2024-08-09",
            "count": 1
          },
          {
            "date": "2024-08-10",
            "count": 1
          },
          {
            "date": "2024-08-28",
            "count": 1
          },
          {
            "date": "2024-08-30",
            "count": 1
          },
          {
            "date": "2024-10-09",
            "count": 1
          },
          {
            "date": "2024-10-12",
            "count": 1
          },
          {
            "date": "2024-10-18",
            "count": 1
          },
          {
            "date": "2024-10-21",
            "count": 1
          },
          {
            "date": "2024-10-24",
            "count": 1
          },
          {
            "date": "2024-10-25",
            "count": 1
          },
          {
            "date": "2024-10-29",
            "count": 1
          },
          {
            "date": "2024-11-04",
            "count": 1
          },
          {
            "date": "2024-11-06",
            "count": 1
          },
          {
            "date": "2024-11-14",
            "count": 1
          },
          {
            "date": "2024-11-16",
            "count": 1
          },
          {
            "date": "2024-11-21",
            "count": 1
          },
          {
            "date": "2024-11-22",
            "count": 1
          },
          {
            "date": "2024-11-25",
            "count": 1
          },
          {
            "date": "2024-12-04",
            "count": 1
          },
          {
            "date": "2024-12-05",
            "count": 1
          },
          {
            "date": "2024-12-06",
            "count": 1
          },
          {
            "date": "2024-12-07",
            "count": 1
          },
          {
            "date": "2024-12-08",
            "count": 1
          },
          {
            "date": "2024-12-09",
            "count": 1
          },
          {
            "date": "2024-12-23",
            "count": 1
          },
          {
            "date": "2024-12-27",
            "count": 1
          },
          {
            "date": "2025-01-08",
            "count": 2
          },
          {
            "date": "2025-01-14",
            "count": 1
          },
          {
            "date": "2025-01-17",
            "count": 1
          },
          {
            "date": "2025-01-23",
            "count": 1
          },
          {
            "date": "2025-01-30",
            "count": 1
          },
          {
            "date": "2025-02-01",
            "count": 1
          },
          {
            "date": "2025-02-02",
            "count": 1
          },
          {
            "date": "2025-02-10",
            "count": 1
          },
          {
            "date": "2025-02-27",
            "count": 1
          },
          {
            "date": "2025-03-02",
            "count": 1
          },
          {
            "date": "2025-03-03",
            "count": 1
          },
          {
            "date": "2025-03-11",
            "count": 1
          },
          {
            "date": "2025-03-18",
            "count": 1
          },
          {
            "date": "2025-03-21",
            "count": 2
          },
          {
            "date": "2025-03-26",
            "count": 1
          },
          {
            "date": "2025-04-02",
            "count": 1
          },
          {
            "date": "2025-04-16",
            "count": 1
          },
          {
            "date": "2025-04-19",
            "count": 1
          },
          {
            "date": "2025-04-21",
            "count": 1
          },
          {
            "date": "2025-04-25",
            "count": 1
          },
          {
            "date": "2025-05-11",
            "count": 1
          },
          {
            "date": "2025-05-15",
            "count": 1
          },
          {
            "date": "2025-05-21",
            "count": 1
          },
          {
            "date": "2025-05-29",
            "count": 1
          },
          {
            "date": "2025-06-01",
            "count": 1
          },
          {
            "date": "2025-06-08",
            "count": 1
          },
          {
            "date": "2025-06-17",
            "count": 1
          },
          {
            "date": "2025-06-30",
            "count": 1
          },
          {
            "date": "2025-07-04",
            "count": 1
          },
          {
            "date": "2025-07-05",
            "count": 2
          },
          {
            "date": "2025-07-17",
            "count": 1
          },
          {
            "date": "2025-07-21",
            "count": 1
          },
          {
            "date": "2025-07-24",
            "count": 1
          },
          {
            "date": "2025-07-25",
            "count": 1
          },
          {
            "date": "2025-07-31",
            "count": 1
          },
          {
            "date": "2025-08-25",
            "count": 1
          },
          {
            "date": "2025-08-29",
            "count": 1
          },
          {
            "date": "2025-09-10",
            "count": 1
          },
          {
            "date": "2025-09-11",
            "count": 1
          },
          {
            "date": "2025-09-13",
            "count": 1
          },
          {
            "date": "2025-09-14",
            "count": 1
          },
          {
            "date": "2025-09-15",
            "count": 1
          },
          {
            "date": "2025-09-22",
            "count": 1
          },
          {
            "date": "2025-09-28",
            "count": 1
          },
          {
            "date": "2025-09-29",
            "count": 1
          },
          {
            "date": "2025-09-30",
            "count": 1
          },
          {
            "date": "2025-10-04",
            "count": 1
          },
          {
            "date": "2025-10-08",
            "count": 1
          },
          {
            "date": "2025-10-09",
            "count": 1
          },
          {
            "date": "2025-10-13",
            "count": 2
          },
          {
            "date": "2025-10-14",
            "count": 1
          },
          {
            "date": "2025-10-17",
            "count": 1
          },
          {
            "date": "2025-10-31",
            "count": 1
          },
          {
            "date": "2025-11-06",
            "count": 1
          },
          {
            "date": "2025-11-12",
            "count": 1
          },
          {
            "date": "2025-11-29",
            "count": 1
          },
          {
            "date": "2025-12-02",
            "count": 1
          },
          {
            "date": "2025-12-27",
            "count": 1
          },
          {
            "date": "2026-01-06",
            "count": 1
          },
          {
            "date": "2026-01-08",
            "count": 1
          },
          {
            "date": "2026-01-21",
            "count": 1
          },
          {
            "date": "2026-01-29",
            "count": 1
          },
          {
            "date": "2026-01-31",
            "count": 2
          },
          {
            "date": "2026-02-02",
            "count": 1
          },
          {
            "date": "2026-02-08",
            "count": 1
          },
          {
            "date": "2026-02-18",
            "count": 1
          },
          {
            "date": "2026-02-27",
            "count": 1
          },
          {
            "date": "2026-02-28",
            "count": 1
          },
          {
            "date": "2026-03-01",
            "count": 1
          },
          {
            "date": "2026-03-03",
            "count": 1
          },
          {
            "date": "2026-03-04",
            "count": 1
          },
          {
            "date": "2026-03-08",
            "count": 1
          },
          {
            "date": "2026-03-18",
            "count": 1
          },
          {
            "date": "2026-03-20",
            "count": 1
          },
          {
            "date": "2026-03-29",
            "count": 1
          },
          {
            "date": "2026-03-30",
            "count": 1
          },
          {
            "date": "2026-04-11",
            "count": 2
          },
          {
            "date": "2026-04-13",
            "count": 1
          },
          {
            "date": "2026-04-21",
            "count": 1
          },
          {
            "date": "2026-04-22",
            "count": 1
          },
          {
            "date": "2026-04-24",
            "count": 1
          },
          {
            "date": "2026-05-01",
            "count": 1
          },
          {
            "date": "2026-05-19",
            "count": 1
          },
          {
            "date": "2026-05-20",
            "count": 1
          },
          {
            "date": "2026-06-01",
            "count": 1
          },
          {
            "date": "2026-06-06",
            "count": 1
          },
          {
            "date": "2026-06-08",
            "count": 1
          },
          {
            "date": "2026-06-12",
            "count": 1
          },
          {
            "date": "2026-06-18",
            "count": 1
          },
          {
            "date": "2026-07-03",
            "count": 1
          },
          {
            "date": "2026-07-10",
            "count": 2
          },
          {
            "date": "2026-07-16",
            "count": 1
          },
          {
            "date": "2026-07-19",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 606,
        "total_forks": 614
      },
      "star_history": null,
      "open_issues_and_prs": 2
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "cookbook"
      ],
      "has_llms_txt": false,
      "has_dockerfile": true,
      "has_mcp_signal": false,
      "bootstrap_files": [
        "vendor/mockery/mockery/docs/Makefile"
      ],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [],
      "toolchain_manifests": [],
      "largest_source_bytes": 905742,
      "source_files_sampled": 268,
      "oversized_source_files": 7,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "composer.json",
        "package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.16",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-mh99-v99m-4gvg"
            ],
            "fixed_version": "5.0.8",
            "advisory_count": 1,
            "oldest_advisory_days": 0
          },
          {
            "name": "elliptic",
            "direct": false,
            "version": "6.6.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.3,
            "advisory_ids": [
              "GHSA-848j-6mx2-7j84"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 197
          },
          {
            "name": "fast-uri",
            "direct": false,
            "version": "3.1.3",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-v2hh-gcrm-f6hx"
            ],
            "fixed_version": "4.1.1",
            "advisory_count": 1,
            "oldest_advisory_days": 3
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.16",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-r28c-9q8g-f849"
            ],
            "fixed_version": "8.5.18",
            "advisory_count": 1,
            "oldest_advisory_days": 0
          },
          {
            "name": "svgo",
            "direct": false,
            "version": "2.8.2",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 8.2,
            "advisory_ids": [
              "GHSA-2p49-hgcm-8545"
            ],
            "fixed_version": "4.0.2",
            "advisory_count": 1,
            "oldest_advisory_days": 3
          },
          {
            "name": "websocket-driver",
            "direct": false,
            "version": "0.7.4",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-mp7j-qc5w-4988",
              "GHSA-xv26-6w52-cph6"
            ],
            "fixed_version": "0.7.5",
            "advisory_count": 2,
            "oldest_advisory_days": 9
          },
          {
            "name": "guzzlehttp/guzzle",
            "direct": true,
            "version": "7.13.3",
            "severity": "moderate",
            "ecosystem": "packagist",
            "cvss_score": 5.9,
            "advisory_ids": [
              "GHSA-94pj-82f3-465w",
              "GHSA-f283-ghqc-fg79",
              "GHSA-h95v-h523-3mw8",
              "GHSA-wm3w-8rrp-j577"
            ],
            "fixed_version": "7.15.1",
            "advisory_count": 4,
            "oldest_advisory_days": 4
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.12.6",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-2g4f-4pwh-qvx6"
            ],
            "fixed_version": "8.18.0",
            "advisory_count": 1,
            "oldest_advisory_days": 163
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "8.17.1",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-2g4f-4pwh-qvx6"
            ],
            "fixed_version": "8.18.0",
            "advisory_count": 1,
            "oldest_advisory_days": 163
          },
          {
            "name": "webpack-dev-server",
            "direct": false,
            "version": "4.15.2",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 6.5,
            "advisory_ids": [
              "GHSA-4v9v-hfq4-rm2v",
              "GHSA-79cf-xcqc-c78w",
              "GHSA-9jgg-88mc-972h",
              "GHSA-f5vj-f2hx-8m93",
              "GHSA-m28w-2pqf-7qgj",
              "GHSA-mx8g-39q3-5c79"
            ],
            "fixed_version": "5.2.6",
            "advisory_count": 6,
            "oldest_advisory_days": 415
          },
          {
            "name": "body-parser",
            "direct": false,
            "version": "1.20.3",
            "severity": "low",
            "ecosystem": "npm",
            "cvss_score": 3.7,
            "advisory_ids": [
              "GHSA-v422-hmwv-36x6"
            ],
            "fixed_version": "2.3.0",
            "advisory_count": 1,
            "oldest_advisory_days": 4
          },
          {
            "name": "webpack",
            "direct": false,
            "version": "5.100.1",
            "severity": "low",
            "ecosystem": "npm",
            "cvss_score": 3.7,
            "advisory_ids": [
              "GHSA-38r7-794h-5758",
              "GHSA-8fgc-7cc6-rx7x"
            ],
            "fixed_version": "5.104.1",
            "advisory_count": 2,
            "oldest_advisory_days": 169
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "low": 2,
          "high": 6,
          "moderate": 4
        },
        "advisory_count": 22,
        "affected_count": 12,
        "assessed_count": 1015,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 0,
        "direct_affected_count": 1
      },
      "ecosystems": [
        "npm",
        "packagist"
      ],
      "dependencies": [
        {
          "name": "enshrined/svg-sanitize",
          "manifest": "composer.json",
          "ecosystem": "packagist",
          "version_constraint": "^0.22.0"
        },
        {
          "name": "graham-campbell/github",
          "manifest": "composer.json",
          "ecosystem": "packagist",
          "version_constraint": "^13.0"
        },
        {
          "name": "guzzlehttp/guzzle",
          "manifest": "composer.json",
          "ecosystem": "packagist",
          "version_constraint": "^7.8"
        },
        {
          "name": "laravel/framework",
          "manifest": "composer.json",
          "ecosystem": "packagist",
          "version_constraint": "^13.0"
        },
        {
          "name": "laravel/tinker",
          "manifest": "composer.json",
          "ecosystem": "packagist",
          "version_constraint": "^3.0"
        },
        {
          "name": "laravel/ui",
          "manifest": "composer.json",
          "ecosystem": "packagist",
          "version_constraint": "^4.4"
        },
        {
          "name": "league/flysystem-aws-s3-v3",
          "manifest": "composer.json",
          "ecosystem": "packagist",
          "version_constraint": "^3.0"
        },
        {
          "name": "nunomaduro/collision",
          "manifest": "composer.json",
          "ecosystem": "packagist",
          "version_constraint": "^8.0"
        },
        {
          "name": "phrity/websocket",
          "manifest": "composer.json",
          "ecosystem": "packagist",
          "version_constraint": "^3.6"
        },
        {
          "name": "spatie/laravel-html",
          "manifest": "composer.json",
          "ecosystem": "packagist",
          "version_constraint": "^3.11"
        },
        {
          "name": "spatie/laravel-ignition",
          "manifest": "composer.json",
          "ecosystem": "packagist",
          "version_constraint": "^2.4"
        },
        {
          "name": "symfony/yaml",
          "manifest": "composer.json",
          "ecosystem": "packagist",
          "version_constraint": "^7.0"
        },
        {
          "name": "select2",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "~4.0.13"
        },
        {
          "name": "sortablejs",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.15.0"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "select2",
            "direct": true,
            "version": "4.0.13",
            "ecosystem": "npm"
          },
          {
            "name": "sortablejs",
            "direct": true,
            "version": "1.15.6",
            "ecosystem": "npm"
          },
          {
            "name": "enshrined/svg-sanitize",
            "direct": true,
            "version": "0.22.0",
            "ecosystem": "packagist"
          },
          {
            "name": "graham-campbell/github",
            "direct": true,
            "version": "13.1.1",
            "ecosystem": "packagist"
          },
          {
            "name": "guzzlehttp/guzzle",
            "direct": true,
            "version": "7.13.3",
            "ecosystem": "packagist"
          },
          {
            "name": "laravel/framework",
            "direct": true,
            "version": "13.19.0",
            "ecosystem": "packagist"
          },
          {
            "name": "laravel/tinker",
            "direct": true,
            "version": "3.0.2",
            "ecosystem": "packagist"
          },
          {
            "name": "laravel/ui",
            "direct": true,
            "version": "4.6.3",
            "ecosystem": "packagist"
          },
          {
            "name": "league/flysystem-aws-s3-v3",
            "direct": true,
            "version": "3.35.2",
            "ecosystem": "packagist"
          },
          {
            "name": "nunomaduro/collision",
            "direct": true,
            "version": "8.9.4",
            "ecosystem": "packagist"
          },
          {
            "name": "phrity/websocket",
            "direct": true,
            "version": "3.7.3",
            "ecosystem": "packagist"
          },
          {
            "name": "spatie/laravel-html",
            "direct": true,
            "version": "3.13.0",
            "ecosystem": "packagist"
          },
          {
            "name": "spatie/laravel-ignition",
            "direct": true,
            "version": "2.12.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/yaml",
            "direct": true,
            "version": "7.4.14",
            "ecosystem": "packagist"
          },
          {
            "name": "@babel/code-frame",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/compat-data",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/core",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/generator",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-annotate-as-pure",
            "direct": false,
            "version": "7.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-compilation-targets",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-create-class-features-plugin",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-create-regexp-features-plugin",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-define-polyfill-provider",
            "direct": false,
            "version": "0.6.5",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-globals",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-member-expression-to-functions",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-imports",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-transforms",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-optimise-call-expression",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-plugin-utils",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-remap-async-to-generator",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-replace-supers",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-skip-transparent-expression-wrappers",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-option",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-wrap-function",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helpers",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-bugfix-firefox-class-in-computed-class-key",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-bugfix-safari-class-field-initializer-scope",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-proposal-object-rest-spread",
            "direct": false,
            "version": "7.20.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-proposal-private-property-in-object",
            "direct": false,
            "version": "7.21.0-placeholder-for-preset-env.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-dynamic-import",
            "direct": false,
            "version": "7.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-import-assertions",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-import-attributes",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-object-rest-spread",
            "direct": false,
            "version": "7.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-unicode-sets-regex",
            "direct": false,
            "version": "7.18.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-arrow-functions",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-async-generator-functions",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-async-to-generator",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-block-scoped-functions",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-block-scoping",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-class-properties",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-class-static-block",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-classes",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-computed-properties",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-destructuring",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-dotall-regex",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-duplicate-keys",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-duplicate-named-capturing-groups-regex",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-dynamic-import",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-explicit-resource-management",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-exponentiation-operator",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-export-namespace-from",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-for-of",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-function-name",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-json-strings",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-literals",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-logical-assignment-operators",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-member-expression-literals",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-modules-amd",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-modules-commonjs",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-modules-systemjs",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-modules-umd",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-named-capturing-groups-regex",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-new-target",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-nullish-coalescing-operator",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-numeric-separator",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-object-rest-spread",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-object-super",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-optional-catch-binding",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-optional-chaining",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-parameters",
            "direct": false,
            "version": "7.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-private-methods",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-private-property-in-object",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-property-literals",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-regenerator",
            "direct": false,
            "version": "7.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-regexp-modifiers",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-reserved-words",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-runtime",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-shorthand-properties",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-spread",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-sticky-regex",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-template-literals",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-typeof-symbol",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-unicode-escapes",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-unicode-property-regex",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-unicode-regex",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-unicode-sets-regex",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/preset-env",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/preset-modules",
            "direct": false,
            "version": "0.1.6-no-external-plugins",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/runtime",
            "direct": false,
            "version": "7.27.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/template",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/traverse",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@colors/colors",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@discoveryjs/json-ext",
            "direct": false,
            "version": "0.5.7",
            "ecosystem": "npm"
          },
          {
            "name": "@discoveryjs/json-ext",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/eslint-utils",
            "direct": false,
            "version": "4.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/regexpp",
            "direct": false,
            "version": "4.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/eslintrc",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": false,
            "version": "8.57.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/config-array",
            "direct": false,
            "version": "0.13.0",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/module-importer",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/object-schema",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/gen-mapping",
            "direct": false,
            "version": "0.3.12",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/remapping",
            "direct": false,
            "version": "2.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/resolve-uri",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/source-map",
            "direct": false,
            "version": "0.3.10",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.29",
            "ecosystem": "npm"
          },
          {
            "name": "@leichtgewicht/ip-codec",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.scandir",
            "direct": false,
            "version": "2.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.stat",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.walk",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-android-arm64",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-darwin-arm64",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-darwin-x64",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-freebsd-x64",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-linux-arm-glibc",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-linux-arm-musl",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-linux-arm64-glibc",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-linux-arm64-musl",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-linux-x64-glibc",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-linux-x64-musl",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-win32-arm64",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-win32-ia32",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-win32-x64",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rtsao/scc",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__core",
            "direct": false,
            "version": "7.20.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__generator",
            "direct": false,
            "version": "7.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__template",
            "direct": false,
            "version": "7.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__traverse",
            "direct": false,
            "version": "7.20.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/body-parser",
            "direct": false,
            "version": "1.19.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/bonjour",
            "direct": false,
            "version": "3.5.13",
            "ecosystem": "npm"
          },
          {
            "name": "@types/clean-css",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/connect",
            "direct": false,
            "version": "3.4.38",
            "ecosystem": "npm"
          },
          {
            "name": "@types/connect-history-api-fallback",
            "direct": false,
            "version": "1.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/eslint",
            "direct": false,
            "version": "9.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/eslint-scope",
            "direct": false,
            "version": "3.7.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/express",
            "direct": false,
            "version": "4.17.23",
            "ecosystem": "npm"
          },
          {
            "name": "@types/express-serve-static-core",
            "direct": false,
            "version": "4.19.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/express-serve-static-core",
            "direct": false,
            "version": "5.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/glob",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/http-errors",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/http-proxy",
            "direct": false,
            "version": "1.17.16",
            "ecosystem": "npm"
          },
          {
            "name": "@types/imagemin",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/imagemin-gifsicle",
            "direct": false,
            "version": "7.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/imagemin-mozjpeg",
            "direct": false,
            "version": "8.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/imagemin-optipng",
            "direct": false,
            "version": "5.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/imagemin-svgo",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json-schema",
            "direct": false,
            "version": "7.0.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json5",
            "direct": false,
            "version": "0.0.29",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mime",
            "direct": false,
            "version": "1.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/minimatch",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "24.0.13",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node-forge",
            "direct": false,
            "version": "1.3.13",
            "ecosystem": "npm"
          },
          {
            "name": "@types/parse-json",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/qs",
            "direct": false,
            "version": "6.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/range-parser",
            "direct": false,
            "version": "1.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/retry",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/send",
            "direct": false,
            "version": "0.17.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/serve-index",
            "direct": false,
            "version": "1.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/serve-static",
            "direct": false,
            "version": "1.15.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/sockjs",
            "direct": false,
            "version": "0.3.36",
            "ecosystem": "npm"
          },
          {
            "name": "@types/svgo",
            "direct": false,
            "version": "1.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/ws",
            "direct": false,
            "version": "8.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "@ungap/structured-clone",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/ast",
            "direct": false,
            "version": "1.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/floating-point-hex-parser",
            "direct": false,
            "version": "1.13.2",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/helper-api-error",
            "direct": false,
            "version": "1.13.2",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/helper-buffer",
            "direct": false,
            "version": "1.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/helper-numbers",
            "direct": false,
            "version": "1.13.2",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/helper-wasm-bytecode",
            "direct": false,
            "version": "1.13.2",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/helper-wasm-section",
            "direct": false,
            "version": "1.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/ieee754",
            "direct": false,
            "version": "1.13.2",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/leb128",
            "direct": false,
            "version": "1.13.2",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/utf8",
            "direct": false,
            "version": "1.13.2",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/wasm-edit",
            "direct": false,
            "version": "1.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/wasm-gen",
            "direct": false,
            "version": "1.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/wasm-opt",
            "direct": false,
            "version": "1.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/wasm-parser",
            "direct": false,
            "version": "1.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/wast-printer",
            "direct": false,
            "version": "1.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webpack-cli/configtest",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@webpack-cli/configtest",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webpack-cli/info",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@webpack-cli/info",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webpack-cli/serve",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@webpack-cli/serve",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@xtuc/ieee754",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@xtuc/long",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "accepts",
            "direct": false,
            "version": "1.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-import-phases",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-jsx",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.12.6",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "8.17.1",
            "ecosystem": "npm"
          },
          {
            "name": "ajv-formats",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "ajv-keywords",
            "direct": false,
            "version": "3.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "ajv-keywords",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-html-community",
            "direct": false,
            "version": "0.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "anymatch",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "array-buffer-byte-length",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "array-flatten",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "array-includes",
            "direct": false,
            "version": "3.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "array-union",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "array.prototype.findlastindex",
            "direct": false,
            "version": "1.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "array.prototype.flat",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "array.prototype.flatmap",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "arraybuffer.prototype.slice",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "asn1.js",
            "direct": false,
            "version": "4.10.1",
            "ecosystem": "npm"
          },
          {
            "name": "assert",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "async-function",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "autoprefixer",
            "direct": false,
            "version": "10.4.21",
            "ecosystem": "npm"
          },
          {
            "name": "available-typed-arrays",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "babel-loader",
            "direct": false,
            "version": "8.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "babel-plugin-polyfill-corejs2",
            "direct": false,
            "version": "0.4.14",
            "ecosystem": "npm"
          },
          {
            "name": "babel-plugin-polyfill-corejs3",
            "direct": false,
            "version": "0.13.0",
            "ecosystem": "npm"
          },
          {
            "name": "babel-plugin-polyfill-regenerator",
            "direct": false,
            "version": "0.6.5",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "base64-js",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "batch",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "big.js",
            "direct": false,
            "version": "5.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "binary-extensions",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "bn.js",
            "direct": false,
            "version": "5.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "body-parser",
            "direct": false,
            "version": "1.20.3",
            "ecosystem": "npm"
          },
          {
            "name": "bonjour-service",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "boolbase",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "bootstrap-sass",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.16",
            "ecosystem": "npm"
          },
          {
            "name": "braces",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "brorand",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "browserify-aes",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "browserify-cipher",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "browserify-des",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "browserify-rsa",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "browserify-sign",
            "direct": false,
            "version": "4.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "browserify-zlib",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "browserslist",
            "direct": false,
            "version": "4.25.1",
            "ecosystem": "npm"
          },
          {
            "name": "buffer",
            "direct": false,
            "version": "4.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-from",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-xor",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "builtin-status-codes",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "bytes",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "call-bind",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "call-bind-apply-helpers",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "call-bound",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "callsites",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "camel-case",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "caniuse-api",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "caniuse-lite",
            "direct": false,
            "version": "1.0.30001727",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "charenc",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "chrome-trace-event",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "cipher-base",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "clean-css",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "clean-css",
            "direct": false,
            "version": "5.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "cli-table3",
            "direct": false,
            "version": "0.6.5",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "clone-deep",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "collect.js",
            "direct": false,
            "version": "4.36.1",
            "ecosystem": "npm"
          },
          {
            "name": "color-convert",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "color-name",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "colord",
            "direct": false,
            "version": "2.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "colorette",
            "direct": false,
            "version": "2.0.20",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "12.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "2.20.3",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "commondir",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "compressible",
            "direct": false,
            "version": "2.0.18",
            "ecosystem": "npm"
          },
          {
            "name": "compression",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "concat",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "concat-map",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "confusing-browser-globals",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "connect-history-api-fallback",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "consola",
            "direct": false,
            "version": "2.15.3",
            "ecosystem": "npm"
          },
          {
            "name": "console-browserify",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "constants-browserify",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "content-disposition",
            "direct": false,
            "version": "0.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "content-type",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cookie",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "cookie-signature",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "core-js-compat",
            "direct": false,
            "version": "3.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "core-util-is",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "cosmiconfig",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "create-ecdh",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "create-hash",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "create-hash",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "create-hmac",
            "direct": false,
            "version": "1.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "crypt",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "crypto-browserify",
            "direct": false,
            "version": "3.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "css-declaration-sorter",
            "direct": false,
            "version": "6.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "css-loader",
            "direct": false,
            "version": "5.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "css-select",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "css-tree",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "css-what",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "cssesc",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cssnano",
            "direct": false,
            "version": "5.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "cssnano-preset-default",
            "direct": false,
            "version": "5.2.14",
            "ecosystem": "npm"
          },
          {
            "name": "cssnano-utils",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "csso",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "data-view-buffer",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "data-view-byte-length",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "data-view-byte-offset",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "2.6.9",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "3.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "deep-is",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "default-gateway",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "define-data-property",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "define-lazy-prop",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "define-properties",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "depd",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "depd",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "des.js",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "destroy",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-libc",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "detect-node",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "diffie-hellman",
            "direct": false,
            "version": "5.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "dir-glob",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "dns-packet",
            "direct": false,
            "version": "5.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "doctrine",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "doctrine",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "dom-serializer",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "domain-browser",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "domelementtype",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "domhandler",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "domhandler",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "domutils",
            "direct": false,
            "version": "2.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "dot-case",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "dotenv",
            "direct": false,
            "version": "10.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "dotenv-expand",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "dunder-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ee-first",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "electron-to-chromium",
            "direct": false,
            "version": "1.5.182",
            "ecosystem": "npm"
          },
          {
            "name": "elliptic",
            "direct": false,
            "version": "6.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "emojis-list",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "encodeurl",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "encodeurl",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "enhanced-resolve",
            "direct": false,
            "version": "5.18.2",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "envinfo",
            "direct": false,
            "version": "7.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "error-ex",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "es-abstract",
            "direct": false,
            "version": "1.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-define-property",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-errors",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-module-lexer",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-object-atoms",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-set-tostringtag",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-shim-unscopables",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-to-primitive",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-html",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "8.57.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-config-airbnb-base",
            "direct": false,
            "version": "15.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-config-prettier",
            "direct": false,
            "version": "8.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-import-resolver-node",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-module-utils",
            "direct": false,
            "version": "2.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-import",
            "direct": false,
            "version": "2.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-prettier",
            "direct": false,
            "version": "4.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "7.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "espree",
            "direct": false,
            "version": "9.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "esquery",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "esrecurse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "esutils",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "etag",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "eventemitter3",
            "direct": false,
            "version": "4.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "events",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "evp_bytestokey",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "execa",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "express",
            "direct": false,
            "version": "4.21.2",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-diff",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-glob",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-json-stable-stringify",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-levenshtein",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "fast-uri",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fastest-levenshtein",
            "direct": false,
            "version": "1.0.16",
            "ecosystem": "npm"
          },
          {
            "name": "fastq",
            "direct": false,
            "version": "1.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "faye-websocket",
            "direct": false,
            "version": "0.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "file-entry-cache",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "file-loader",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "file-type",
            "direct": false,
            "version": "12.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "fill-range",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "finalhandler",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "find-cache-dir",
            "direct": false,
            "version": "3.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "flat",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "flat-cache",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "flatted",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "follow-redirects",
            "direct": false,
            "version": "1.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "for-each",
            "direct": false,
            "version": "0.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "forwarded",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "fraction.js",
            "direct": false,
            "version": "4.3.7",
            "ecosystem": "npm"
          },
          {
            "name": "fresh",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "10.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs-monkey",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "fs.realpath",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "function-bind",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "function.prototype.name",
            "direct": false,
            "version": "1.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "functions-have-names",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "gensync",
            "direct": false,
            "version": "1.0.0-beta.2",
            "ecosystem": "npm"
          },
          {
            "name": "get-caller-file",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "get-intrinsic",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-stream",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-symbol-description",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "7.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "glob-to-regexp",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "13.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "globalthis",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "globby",
            "direct": false,
            "version": "10.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "gopd",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "graphemer",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "growly",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "handle-thing",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "has-bigints",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-property-descriptors",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "has-proto",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-symbols",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-tostringtag",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "hash-base",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "hash-base",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "hash-sum",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "hash.js",
            "direct": false,
            "version": "1.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "hasown",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "he",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "hmac-drbg",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hpack.js",
            "direct": false,
            "version": "2.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "html-entities",
            "direct": false,
            "version": "2.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-loader",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "html-minifier-terser",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "htmlparser2",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "http-deceiver",
            "direct": false,
            "version": "1.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "http-errors",
            "direct": false,
            "version": "1.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "http-errors",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "http-parser-js",
            "direct": false,
            "version": "0.5.10",
            "ecosystem": "npm"
          },
          {
            "name": "http-proxy",
            "direct": false,
            "version": "1.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "http-proxy-middleware",
            "direct": false,
            "version": "2.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "https-browserify",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "human-signals",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.4.24",
            "ecosystem": "npm"
          },
          {
            "name": "icss-utils",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "ieee754",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "imagemin",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "img-loader",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "immutable",
            "direct": false,
            "version": "5.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "import-fresh",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "import-local",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "imurmurhash",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "inflight",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "inherits",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "inherits",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "internal-slot",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "interpret",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "interpret",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "ipaddr.js",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "ipaddr.js",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-array-buffer",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "is-arrayish",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-async-function",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-bigint",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-binary-path",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-boolean-object",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-buffer",
            "direct": false,
            "version": "1.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "is-callable",
            "direct": false,
            "version": "1.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "is-core-module",
            "direct": false,
            "version": "2.16.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-data-view",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-date-object",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-docker",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-finalizationregistry",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-fullwidth-code-point",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-generator-function",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-glob",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-map",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-negative-zero",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-number",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-number-object",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-path-inside",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-object",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "is-regex",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-set",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-shared-array-buffer",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "is-stream",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-string",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-symbol",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-typed-array",
            "direct": false,
            "version": "1.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "is-weakmap",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-weakref",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-weakset",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "is-wsl",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "isarray",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isarray",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isobject",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-worker",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "jquery",
            "direct": false,
            "version": "3.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsesc",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "jsesc",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-buffer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-parse-even-better-errors",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-stable-stringify-without-jsonify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "jsonfile",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "junk",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "keyv",
            "direct": false,
            "version": "4.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "kind-of",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "klona",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "laravel-mix",
            "direct": false,
            "version": "6.0.49",
            "ecosystem": "npm"
          },
          {
            "name": "launch-editor",
            "direct": false,
            "version": "2.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "levn",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "lilconfig",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "lines-and-columns",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "loader-runner",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "loader-utils",
            "direct": false,
            "version": "1.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "loader-utils",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash",
            "direct": false,
            "version": "4.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.debounce",
            "direct": false,
            "version": "4.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.memoize",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.merge",
            "direct": false,
            "version": "4.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.uniq",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "lower-case",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "make-dir",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "math-intrinsics",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "md5",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "md5.js",
            "direct": false,
            "version": "1.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "mdn-data",
            "direct": false,
            "version": "2.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "media-typer",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "memfs",
            "direct": false,
            "version": "3.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "merge-descriptors",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "merge-stream",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "merge2",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "methods",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromatch",
            "direct": false,
            "version": "4.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "miller-rabin",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mime",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-db",
            "direct": false,
            "version": "1.52.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-types",
            "direct": false,
            "version": "2.1.35",
            "ecosystem": "npm"
          },
          {
            "name": "mimic-fn",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mini-css-extract-plugin",
            "direct": false,
            "version": "1.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "minimalistic-assert",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "minimalistic-crypto-utils",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimist",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "multicast-dns",
            "direct": false,
            "version": "7.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.15",
            "ecosystem": "npm"
          },
          {
            "name": "natural-compare",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "negotiator",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "negotiator",
            "direct": false,
            "version": "0.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "neo-async",
            "direct": false,
            "version": "2.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "no-case",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "node-addon-api",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "node-forge",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-libs-browser",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "node-notifier",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "node-releases",
            "direct": false,
            "version": "2.0.19",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-range",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-url",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "npm-run-path",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "nth-check",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "object-inspect",
            "direct": false,
            "version": "1.13.4",
            "ecosystem": "npm"
          },
          {
            "name": "object-keys",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "object.assign",
            "direct": false,
            "version": "4.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "object.entries",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "object.fromentries",
            "direct": false,
            "version": "2.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "object.groupby",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "object.values",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "obuf",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "on-finished",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "on-headers",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "once",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "onetime",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "open",
            "direct": false,
            "version": "8.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "optionator",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "os-browserify",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "own-keys",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-pipe",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-retry",
            "direct": false,
            "version": "4.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "p-try",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "pako",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "param-case",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "parent-module",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse-asn1",
            "direct": false,
            "version": "5.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "parse-json",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "parseurl",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "pascal-case",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "path-browserify",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-exists",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-is-absolute",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-parse",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "path-to-regexp",
            "direct": false,
            "version": "0.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "path-type",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "pbkdf2",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "pkg-dir",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "possible-typed-array-names",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.16",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-calc",
            "direct": false,
            "version": "8.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-colormin",
            "direct": false,
            "version": "5.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-convert-values",
            "direct": false,
            "version": "5.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-discard-comments",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-discard-duplicates",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-discard-empty",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-discard-overridden",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-load-config",
            "direct": false,
            "version": "3.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-loader",
            "direct": false,
            "version": "6.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-merge-longhand",
            "direct": false,
            "version": "5.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-merge-rules",
            "direct": false,
            "version": "5.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-minify-font-values",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-minify-gradients",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-minify-params",
            "direct": false,
            "version": "5.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-minify-selectors",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-modules-extract-imports",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-modules-local-by-default",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-modules-scope",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-modules-values",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-charset",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-display-values",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-positions",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-repeat-style",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-string",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-timing-functions",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-unicode",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-url",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-normalize-whitespace",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-ordered-values",
            "direct": false,
            "version": "5.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-reduce-initial",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-reduce-transforms",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-selector-parser",
            "direct": false,
            "version": "6.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-selector-parser",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-svgo",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-unique-selectors",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-value-parser",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "prelude-ls",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": false,
            "version": "2.8.8",
            "ecosystem": "npm"
          },
          {
            "name": "prettier-linter-helpers",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "pretty-time",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "process",
            "direct": false,
            "version": "0.11.10",
            "ecosystem": "npm"
          },
          {
            "name": "process-nextick-args",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "proxy-addr",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "public-encrypt",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.15.3",
            "ecosystem": "npm"
          },
          {
            "name": "querystring-es3",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "queue-microtask",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "randombytes",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "randomfill",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "range-parser",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "raw-body",
            "direct": false,
            "version": "2.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "3.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "rechoir",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "rechoir",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "reflect.getprototypeof",
            "direct": false,
            "version": "1.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "regenerate",
            "direct": false,
            "version": "1.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "regenerate-unicode-properties",
            "direct": false,
            "version": "10.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "regexp.prototype.flags",
            "direct": false,
            "version": "1.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "regexpu-core",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "regjsgen",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "regjsparser",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "npm"
          },
          {
            "name": "relateurl",
            "direct": false,
            "version": "0.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "replace-ext",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "require-directory",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "require-from-string",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "requires-port",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve",
            "direct": false,
            "version": "1.22.10",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-cwd",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "retry",
            "direct": false,
            "version": "0.13.1",
            "ecosystem": "npm"
          },
          {
            "name": "reusify",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ripemd160",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ripemd160",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "run-parallel",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "safe-array-concat",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "safe-push-apply",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "safe-regex-test",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "safer-buffer",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "sass",
            "direct": false,
            "version": "1.89.2",
            "ecosystem": "npm"
          },
          {
            "name": "sass-loader",
            "direct": false,
            "version": "13.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "sax",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "schema-utils",
            "direct": false,
            "version": "2.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "schema-utils",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "schema-utils",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "select-hose",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "selfsigned",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "6.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "send",
            "direct": false,
            "version": "0.19.0",
            "ecosystem": "npm"
          },
          {
            "name": "serialize-javascript",
            "direct": false,
            "version": "7.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "serve-index",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "serve-static",
            "direct": false,
            "version": "1.16.2",
            "ecosystem": "npm"
          },
          {
            "name": "set-function-length",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "set-function-name",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "set-proto",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "setimmediate",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "setprototypeof",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "setprototypeof",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "sha.js",
            "direct": false,
            "version": "2.4.12",
            "ecosystem": "npm"
          },
          {
            "name": "shallow-clone",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-regex",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shell-quote",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "shellwords",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-list",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-map",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-weakmap",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "signal-exit",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "slash",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "sockjs",
            "direct": false,
            "version": "0.3.24",
            "ecosystem": "npm"
          },
          {
            "name": "source-list-map",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-js",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-support",
            "direct": false,
            "version": "0.5.21",
            "ecosystem": "npm"
          },
          {
            "name": "spdy",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "spdy-transport",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "stable",
            "direct": false,
            "version": "0.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "statuses",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "statuses",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "std-env",
            "direct": false,
            "version": "3.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "stop-iteration-iterator",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "stream-browserify",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "stream-http",
            "direct": false,
            "version": "2.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "4.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "string.prototype.trim",
            "direct": false,
            "version": "1.2.10",
            "ecosystem": "npm"
          },
          {
            "name": "string.prototype.trimend",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "string.prototype.trimstart",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "string_decoder",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "string_decoder",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "strip-bom",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-final-newline",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-json-comments",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "style-loader",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "stylehacks",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "supports-preserve-symlinks-flag",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "svgo",
            "direct": false,
            "version": "2.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "tapable",
            "direct": false,
            "version": "2.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "terser",
            "direct": false,
            "version": "4.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "terser",
            "direct": false,
            "version": "5.43.1",
            "ecosystem": "npm"
          },
          {
            "name": "terser-webpack-plugin",
            "direct": false,
            "version": "5.3.14",
            "ecosystem": "npm"
          },
          {
            "name": "text-table",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "thunky",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "timers-browserify",
            "direct": false,
            "version": "2.0.12",
            "ecosystem": "npm"
          },
          {
            "name": "to-arraybuffer",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "to-buffer",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "to-regex-range",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "toidentifier",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tsconfig-paths",
            "direct": false,
            "version": "3.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "tty-browserify",
            "direct": false,
            "version": "0.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-check",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-fest",
            "direct": false,
            "version": "0.20.2",
            "ecosystem": "npm"
          },
          {
            "name": "type-is",
            "direct": false,
            "version": "1.6.18",
            "ecosystem": "npm"
          },
          {
            "name": "typed-array-buffer",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "typed-array-byte-length",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "typed-array-byte-offset",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "typed-array-length",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "unbox-primitive",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "7.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "unicode-canonical-property-names-ecmascript",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unicode-match-property-ecmascript",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unicode-match-property-value-ecmascript",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "unicode-property-aliases-ecmascript",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unpipe",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "update-browserslist-db",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "uri-js",
            "direct": false,
            "version": "4.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "url",
            "direct": false,
            "version": "0.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "util",
            "direct": false,
            "version": "0.10.4",
            "ecosystem": "npm"
          },
          {
            "name": "util",
            "direct": false,
            "version": "0.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "util-deprecate",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "utils-merge",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "11.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "vary",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "vm-browserify",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "vue-style-loader",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "watchpack",
            "direct": false,
            "version": "2.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "wbuf",
            "direct": false,
            "version": "1.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "webpack",
            "direct": false,
            "version": "5.100.1",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-cli",
            "direct": false,
            "version": "4.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-cli",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-dev-middleware",
            "direct": false,
            "version": "5.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-dev-server",
            "direct": false,
            "version": "4.15.2",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-merge",
            "direct": false,
            "version": "5.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-merge",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-notifier",
            "direct": false,
            "version": "1.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-sources",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-sources",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "webpackbar",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "websocket-driver",
            "direct": false,
            "version": "0.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "websocket-extensions",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "which-boxed-primitive",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "which-builtin-type",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "which-collection",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "which-typed-array",
            "direct": false,
            "version": "1.1.19",
            "ecosystem": "npm"
          },
          {
            "name": "wildcard",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "word-wrap",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrappy",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ws",
            "direct": false,
            "version": "8.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "xtend",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "y18n",
            "direct": false,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "1.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "17.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "21.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yocto-queue",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "aws/aws-crt-php",
            "direct": false,
            "version": "1.2.7",
            "ecosystem": "packagist"
          },
          {
            "name": "aws/aws-sdk-php",
            "direct": false,
            "version": "3.388.1",
            "ecosystem": "packagist"
          },
          {
            "name": "barryvdh/laravel-ide-helper",
            "direct": false,
            "version": "3.7.0",
            "ecosystem": "packagist"
          },
          {
            "name": "barryvdh/reflection-docblock",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "packagist"
          },
          {
            "name": "brick/math",
            "direct": false,
            "version": "0.18.0",
            "ecosystem": "packagist"
          },
          {
            "name": "carbonphp/carbon-doctrine-types",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "packagist"
          },
          {
            "name": "clue/stream-filter",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "packagist"
          },
          {
            "name": "composer/class-map-generator",
            "direct": false,
            "version": "1.7.3",
            "ecosystem": "packagist"
          },
          {
            "name": "composer/pcre",
            "direct": false,
            "version": "3.4.0",
            "ecosystem": "packagist"
          },
          {
            "name": "dflydev/dot-access-data",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "packagist"
          },
          {
            "name": "doctrine/inflector",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "packagist"
          },
          {
            "name": "doctrine/lexer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "packagist"
          },
          {
            "name": "dragonmantank/cron-expression",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "packagist"
          },
          {
            "name": "egulias/email-validator",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "packagist"
          },
          {
            "name": "fakerphp/faker",
            "direct": false,
            "version": "1.24.1",
            "ecosystem": "packagist"
          },
          {
            "name": "filp/whoops",
            "direct": false,
            "version": "2.18.4",
            "ecosystem": "packagist"
          },
          {
            "name": "fruitcake/php-cors",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "packagist"
          },
          {
            "name": "graham-campbell/bounded-cache",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "packagist"
          },
          {
            "name": "graham-campbell/manager",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "packagist"
          },
          {
            "name": "graham-campbell/result-type",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "packagist"
          },
          {
            "name": "guzzlehttp/promises",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "packagist"
          },
          {
            "name": "guzzlehttp/psr7",
            "direct": false,
            "version": "2.12.4",
            "ecosystem": "packagist"
          },
          {
            "name": "guzzlehttp/uri-template",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "packagist"
          },
          {
            "name": "hamcrest/hamcrest-php",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "packagist"
          },
          {
            "name": "knplabs/github-api",
            "direct": false,
            "version": "3.16.0",
            "ecosystem": "packagist"
          },
          {
            "name": "laravel/prompts",
            "direct": false,
            "version": "0.3.21",
            "ecosystem": "packagist"
          },
          {
            "name": "laravel/serializable-closure",
            "direct": false,
            "version": "2.0.13",
            "ecosystem": "packagist"
          },
          {
            "name": "lcobucci/jwt",
            "direct": false,
            "version": "5.6.0",
            "ecosystem": "packagist"
          },
          {
            "name": "league/commonmark",
            "direct": false,
            "version": "2.8.2",
            "ecosystem": "packagist"
          },
          {
            "name": "league/config",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "packagist"
          },
          {
            "name": "league/flysystem",
            "direct": false,
            "version": "3.35.2",
            "ecosystem": "packagist"
          },
          {
            "name": "league/flysystem-local",
            "direct": false,
            "version": "3.31.0",
            "ecosystem": "packagist"
          },
          {
            "name": "league/mime-type-detection",
            "direct": false,
            "version": "1.16.0",
            "ecosystem": "packagist"
          },
          {
            "name": "league/uri",
            "direct": false,
            "version": "7.8.1",
            "ecosystem": "packagist"
          },
          {
            "name": "league/uri-interfaces",
            "direct": false,
            "version": "7.8.1",
            "ecosystem": "packagist"
          },
          {
            "name": "mockery/mockery",
            "direct": false,
            "version": "1.6.12",
            "ecosystem": "packagist"
          },
          {
            "name": "monolog/monolog",
            "direct": false,
            "version": "3.10.0",
            "ecosystem": "packagist"
          },
          {
            "name": "mtdowling/jmespath.php",
            "direct": false,
            "version": "2.9.2",
            "ecosystem": "packagist"
          },
          {
            "name": "myclabs/deep-copy",
            "direct": false,
            "version": "1.13.4",
            "ecosystem": "packagist"
          },
          {
            "name": "nesbot/carbon",
            "direct": false,
            "version": "3.13.0",
            "ecosystem": "packagist"
          },
          {
            "name": "nette/schema",
            "direct": false,
            "version": "1.3.5",
            "ecosystem": "packagist"
          },
          {
            "name": "nette/utils",
            "direct": false,
            "version": "4.1.4",
            "ecosystem": "packagist"
          },
          {
            "name": "nikic/php-parser",
            "direct": false,
            "version": "5.8.0",
            "ecosystem": "packagist"
          },
          {
            "name": "nunomaduro/termwind",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "packagist"
          },
          {
            "name": "nyholm/psr7",
            "direct": false,
            "version": "1.8.2",
            "ecosystem": "packagist"
          },
          {
            "name": "phar-io/manifest",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "packagist"
          },
          {
            "name": "phar-io/version",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "packagist"
          },
          {
            "name": "php-http/cache-plugin",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "packagist"
          },
          {
            "name": "php-http/client-common",
            "direct": false,
            "version": "2.7.3",
            "ecosystem": "packagist"
          },
          {
            "name": "php-http/discovery",
            "direct": false,
            "version": "1.20.0",
            "ecosystem": "packagist"
          },
          {
            "name": "php-http/httplug",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "packagist"
          },
          {
            "name": "php-http/message",
            "direct": false,
            "version": "1.16.2",
            "ecosystem": "packagist"
          },
          {
            "name": "php-http/multipart-stream-builder",
            "direct": false,
            "version": "1.4.2",
            "ecosystem": "packagist"
          },
          {
            "name": "php-http/promise",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "packagist"
          },
          {
            "name": "phpoption/phpoption",
            "direct": false,
            "version": "1.9.5",
            "ecosystem": "packagist"
          },
          {
            "name": "phpunit/php-code-coverage",
            "direct": false,
            "version": "12.5.7",
            "ecosystem": "packagist"
          },
          {
            "name": "phpunit/php-file-iterator",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "packagist"
          },
          {
            "name": "phpunit/php-invoker",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "packagist"
          },
          {
            "name": "phpunit/php-text-template",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "packagist"
          },
          {
            "name": "phpunit/php-timer",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "packagist"
          },
          {
            "name": "phpunit/phpunit",
            "direct": false,
            "version": "12.5.31",
            "ecosystem": "packagist"
          },
          {
            "name": "phrity/comparison",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "packagist"
          },
          {
            "name": "phrity/http",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "packagist"
          },
          {
            "name": "phrity/net-stream",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "packagist"
          },
          {
            "name": "phrity/net-uri",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "packagist"
          },
          {
            "name": "phrity/util-accessor",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "packagist"
          },
          {
            "name": "phrity/util-errorhandler",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "packagist"
          },
          {
            "name": "phrity/util-interpolator",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "packagist"
          },
          {
            "name": "phrity/util-transformer",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "packagist"
          },
          {
            "name": "psr/cache",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "packagist"
          },
          {
            "name": "psr/clock",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "packagist"
          },
          {
            "name": "psr/container",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "packagist"
          },
          {
            "name": "psr/event-dispatcher",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "packagist"
          },
          {
            "name": "psr/http-client",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "packagist"
          },
          {
            "name": "psr/http-factory",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "packagist"
          },
          {
            "name": "psr/http-message",
            "direct": false,
            "version": "2.0",
            "ecosystem": "packagist"
          },
          {
            "name": "psr/log",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "packagist"
          },
          {
            "name": "psr/simple-cache",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "packagist"
          },
          {
            "name": "psy/psysh",
            "direct": false,
            "version": "0.12.24",
            "ecosystem": "packagist"
          },
          {
            "name": "ralouphie/getallheaders",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "packagist"
          },
          {
            "name": "ramsey/collection",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "packagist"
          },
          {
            "name": "ramsey/uuid",
            "direct": false,
            "version": "4.9.3",
            "ecosystem": "packagist"
          },
          {
            "name": "sebastian/cli-parser",
            "direct": false,
            "version": "4.2.1",
            "ecosystem": "packagist"
          },
          {
            "name": "sebastian/comparator",
            "direct": false,
            "version": "7.1.8",
            "ecosystem": "packagist"
          },
          {
            "name": "sebastian/complexity",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "packagist"
          },
          {
            "name": "sebastian/diff",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "packagist"
          },
          {
            "name": "sebastian/environment",
            "direct": false,
            "version": "8.1.2",
            "ecosystem": "packagist"
          },
          {
            "name": "sebastian/exporter",
            "direct": false,
            "version": "7.0.3",
            "ecosystem": "packagist"
          },
          {
            "name": "sebastian/global-state",
            "direct": false,
            "version": "8.0.3",
            "ecosystem": "packagist"
          },
          {
            "name": "sebastian/lines-of-code",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "packagist"
          },
          {
            "name": "sebastian/object-enumerator",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "packagist"
          },
          {
            "name": "sebastian/object-reflector",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "packagist"
          },
          {
            "name": "sebastian/recursion-context",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "packagist"
          },
          {
            "name": "sebastian/type",
            "direct": false,
            "version": "6.0.4",
            "ecosystem": "packagist"
          },
          {
            "name": "sebastian/version",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "packagist"
          },
          {
            "name": "spatie/backtrace",
            "direct": false,
            "version": "1.8.2",
            "ecosystem": "packagist"
          },
          {
            "name": "spatie/error-solutions",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "packagist"
          },
          {
            "name": "spatie/flare-client-php",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "packagist"
          },
          {
            "name": "spatie/ignition",
            "direct": false,
            "version": "1.16.0",
            "ecosystem": "packagist"
          },
          {
            "name": "squizlabs/php_codesniffer",
            "direct": false,
            "version": "3.13.5",
            "ecosystem": "packagist"
          },
          {
            "name": "staabm/side-effects-detector",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/cache",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/cache-contracts",
            "direct": false,
            "version": "3.7.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/clock",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/console",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/css-selector",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/deprecation-contracts",
            "direct": false,
            "version": "3.7.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/error-handler",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/event-dispatcher",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/event-dispatcher-contracts",
            "direct": false,
            "version": "3.7.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/filesystem",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/finder",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/http-foundation",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/http-kernel",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/mailer",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/mime",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/options-resolver",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/polyfill-ctype",
            "direct": false,
            "version": "1.37.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/polyfill-deepclone",
            "direct": false,
            "version": "1.40.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/polyfill-intl-grapheme",
            "direct": false,
            "version": "1.38.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/polyfill-intl-idn",
            "direct": false,
            "version": "1.38.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/polyfill-intl-normalizer",
            "direct": false,
            "version": "1.38.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/polyfill-mbstring",
            "direct": false,
            "version": "1.38.2",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/polyfill-php80",
            "direct": false,
            "version": "1.37.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/polyfill-php84",
            "direct": false,
            "version": "1.38.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/polyfill-php85",
            "direct": false,
            "version": "1.38.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/polyfill-php86",
            "direct": false,
            "version": "1.38.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/polyfill-uuid",
            "direct": false,
            "version": "1.37.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/process",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/routing",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/service-contracts",
            "direct": false,
            "version": "3.7.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/string",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/thanks",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/translation",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/translation-contracts",
            "direct": false,
            "version": "3.7.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/uid",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/var-dumper",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "packagist"
          },
          {
            "name": "symfony/var-exporter",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "packagist"
          },
          {
            "name": "theseer/tokenizer",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "packagist"
          },
          {
            "name": "tijsverkoyen/css-to-inline-styles",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "packagist"
          },
          {
            "name": "vlucas/phpdotenv",
            "direct": false,
            "version": "5.6.4",
            "ecosystem": "packagist"
          },
          {
            "name": "voku/portable-ascii",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "packagist"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 1015,
        "direct_count": 14,
        "indirect_count": 1001
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 2,
        "merged_prs": 293,
        "open_issues": 0,
        "closed_ratio": 1,
        "closed_issues": 924,
        "closed_unmerged_prs": 74
      },
      "bus_factor": 1,
      "bot_contributors": 2,
      "top_contributors": [
        {
          "type": "User",
          "login": "KodeStar",
          "commits": 533,
          "avatar_url": "https://avatars.githubusercontent.com/u/5698566?v=4"
        },
        {
          "type": "User",
          "login": "headred-chris",
          "commits": 125,
          "avatar_url": "https://avatars.githubusercontent.com/u/102153409?v=4"
        },
        {
          "type": "User",
          "login": "keriati",
          "commits": 66,
          "avatar_url": "https://avatars.githubusercontent.com/u/439392?v=4"
        },
        {
          "type": "User",
          "login": "laravel-shift",
          "commits": 57,
          "avatar_url": "https://avatars.githubusercontent.com/u/15991828?v=4"
        },
        {
          "type": "User",
          "login": "CHBMB",
          "commits": 40,
          "avatar_url": "https://avatars.githubusercontent.com/u/3609888?v=4"
        },
        {
          "type": "User",
          "login": "ullbergm",
          "commits": 29,
          "avatar_url": "https://avatars.githubusercontent.com/u/273876?v=4"
        },
        {
          "type": "User",
          "login": "MindTooth",
          "commits": 18,
          "avatar_url": "https://avatars.githubusercontent.com/u/33870508?v=4"
        },
        {
          "type": "User",
          "login": "aptalca",
          "commits": 15,
          "avatar_url": "https://avatars.githubusercontent.com/u/541623?v=4"
        },
        {
          "type": "User",
          "login": "tkolzer",
          "commits": 13,
          "avatar_url": "https://avatars.githubusercontent.com/u/98907817?v=4"
        },
        {
          "type": "User",
          "login": "xiazeyu",
          "commits": 11,
          "avatar_url": "https://avatars.githubusercontent.com/u/10560038?v=4"
        }
      ],
      "contributors_sampled": 80,
      "top_contributor_share": 0.503
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "call_issue_pr_tracker.yml",
        "call_issues_cron.yml",
        "ci.yml",
        "release.yml",
        "tag-release.yml",
        "tag-version-check.yml"
      ],
      "has_docs_dir": false,
      "linter_configs": [
        ".eslintrc",
        ".php-cs-fixer.dist.php",
        ".php-cs-fixer.php",
        "phpcs.xml",
        "phpstan.neon"
      ],
      "has_editorconfig": true,
      "has_linter_config": true,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "composer.lock",
        "package-lock.json"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 9,
            "reason": "binaries present in source code",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": null,
            "reason": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "12 out of 12 merged PRs checked by a CI test -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 0,
            "reason": "Found 1/13 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 19 contributing companies or organizations",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 10,
            "reason": "update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 1,
            "reason": "dependency not pinned by hash detected -- score normalized to 1",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 0,
            "reason": "SAST tool is not run on all commits -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 4,
            "reason": "security policy file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": null,
            "reason": "no releases found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 0,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 0,
            "reason": "42 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "62823aef630386b3246a07cc9eb861824f837c08",
        "ran_at": "2026-07-25T07:21:03Z",
        "aggregate_score": 4.9,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-24T16:35:37Z",
      "oldest_open_prs": [
        {
          "number": 1543,
          "created_at": "2026-03-04T20:56:33Z",
          "last_comment_at": "2026-07-08T08:43:46Z",
          "last_comment_author": "KodeStar"
        },
        {
          "number": 1561,
          "created_at": "2026-05-05T03:50:54Z",
          "last_comment_at": "2026-07-08T08:42:48Z",
          "last_comment_author": "KodeStar"
        }
      ],
      "last_merged_pr_at": "2026-07-10T16:10:03Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": []
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/linuxserver/Heimdall",
    "host": "github.com",
    "name": "Heimdall",
    "owner": "linuxserver"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "good",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 73,
      "inputs": {
        "security": 55,
        "vitality": 75,
        "community": 90,
        "governance": 66,
        "engineering": 78
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "good",
        "name": "Vitality",
        "value": 75,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "moderate",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 63,
            "inputs": {
              "commits_last_year": 77,
              "human_commit_share": 0.99,
              "days_since_last_push": 14,
              "active_weeks_last_year": 10
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 14 days ago",
                "points": 28.8,
                "status": "partial",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 14
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "10/52 weeks with commits",
                "points": 6.9,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 10
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "77 commits in the last year",
                "points": 17,
                "status": "partial",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 77
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 92,
            "inputs": {
              "releases_count": 88,
              "latest_release_tag": "v2.8.1",
              "releases_from_tags": false,
              "days_since_latest_release": 15,
              "mean_days_between_releases": 67.9
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "88 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 88
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 15 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 15
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~67.9 days",
                "points": 19.8,
                "status": "partial",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 67.9
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "maintained",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": 14,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 14 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 14
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "excellent",
        "name": "Community & Adoption",
        "value": 90,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "excellent",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 94,
            "inputs": {
              "forks": 614,
              "stars": 9279,
              "watchers": 84,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "9,279 stars",
                "points": 60,
                "status": "met",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 9279
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "614 forks",
                "points": 23.2,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 614
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "84 watchers",
                "points": 10.7,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 84
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "excellent",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": true,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (MIT)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "MIT"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 13.5,
                "status": "met",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 66,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "at_risk",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 44,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 80,
              "top_contributor_share": 0.503
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "1 contributor(s) cover half of all commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 50% of commits",
                "points": 11.2,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 50
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "80 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 80
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 19 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 77,
            "inputs": {
              "merged_prs": 293,
              "open_issues": 0,
              "closed_issues": 924,
              "issue_closed_ratio": 1,
              "closed_unmerged_prs": 74
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "100% of issues closed",
                "points": 46.8,
                "status": "met",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "293/367 decided PRs merged",
                "points": 30.5,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 293,
                      "decided": 367
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 1/13 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "good",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 80,
            "inputs": {
              "followers": 6697,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "linuxserver",
              "public_repos": 319,
              "account_age_days": 4095
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "6,697 followers of linuxserver",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 6697,
                      "login": "linuxserver"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "319 public repos, account ~11 yr old",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 319
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 11
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "good",
        "name": "Engineering Quality",
        "value": 78,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "excellent",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": true,
              "has_linter_config": true,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "6 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 6
                    }
                  }
                ],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": ".eslintrc, .php-cs-fixer.dist.php, .php-cs-fixer.php, phpcs.xml, phpstan.neon",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".eslintrc, .php-cs-fixer.dist.php, .php-cs-fixer.php, phpcs.xml, phpstan.neon"
                    }
                  }
                ],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 6.4,
                "status": "met",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "12 out of 12 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "moderate",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 60,
            "inputs": {
              "topics": [
                "heimdall",
                "nzbget",
                "sabnzbd",
                "nginx",
                "dashboard",
                "plex",
                "application-dashboard",
                "bookmark",
                "emby",
                "startpage",
                "server",
                "htpc",
                "sonarr",
                "radarr",
                "homepage",
                "landingpage",
                "landing",
                "couchpotato",
                "organizr",
                "muximux"
              ],
              "has_wiki": true,
              "homepage": null,
              "has_readme": true,
              "has_docs_dir": false,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": "20 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 20
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "moderate",
        "name": "Security",
        "value": 55,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Branch-Protection, Packaging, Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "branch_protection",
                    "packaging",
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 49,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 15,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 3,
              "scorecard_aggregate": 4.9
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "binaries present in source code",
                "points": 6.8,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "12 out of 12 merged PRs checked by a CI test -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 1/13 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 19 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "update tool detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 1",
                "points": 0.5,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file detected",
                "points": 2,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "42 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "good",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories. Remaining weights renormalized. Matched 1015 resolved dependencies against OSV. This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "indirect_dependencies_free_of_known_advisories"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_repository",
                "params": {
                  "assessed": 1015
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 78,
            "inputs": {
              "source": "osv",
              "advisories": 22,
              "affected_packages": 12,
              "assessed_packages": 1015,
              "unassessed_packages": 0,
              "affected_by_severity": "high 6, moderate 4, low 2",
              "direct_affected_packages": 1
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "1 affected: guzzlehttp/guzzle 7.13.3 (moderate 5.9)",
                "points": 18.5,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 1,
                      "packages": "guzzlehttp/guzzle 7.13.3 (moderate 5.9)"
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "transitive set not separable from development and test dependencies in this scope",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_scope_not_separable",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory has been public longer than 90 days",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "advisories_none_stale",
                    "params": {
                      "days": 90
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "excellent",
            "name": "Malicious dependencies",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "source": "osv",
              "meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
              "packages": [],
              "red_flag": false,
              "assessed_packages": 1015,
              "malicious_packages": 0,
              "direct_malicious_packages": 0,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 0
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "no dependency is reported as a malicious package",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "no_malicious_dependencies",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 3
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "moderate",
        "name": "AI Readiness",
        "value": 50,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "at_risk",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 37,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.687,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "68 of 99 human commits state their intent (structured subject or explanatory body)",
                "points": 36.6,
                "status": "partial",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 68,
                      "sampled": 99
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "moderate",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 62,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "composer.lock",
                "package-lock.json"
              ],
              "has_dockerfile": true,
              "typed_language": false,
              "bootstrap_files": [
                "vendor/mockery/mockery/docs/Makefile"
              ],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [],
              "agent_commit_share": 0,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "vendor/mockery/mockery/docs/Makefile",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "vendor/mockery/mockery/docs/Makefile"
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": ".eslintrc, .php-cs-fixer.dist.php, .php-cs-fixer.php, phpcs.xml, phpstan.neon",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".eslintrc, .php-cs-fixer.dist.php, .php-cs-fixer.php, phpcs.xml, phpstan.neon"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "Dockerfile, lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Dockerfile, lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "no agent-authored commits among the last 100",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_authored_commits",
                    "params": {
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no automated dependency updates observed",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_dependency_automation",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 1",
                "points": 1,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "moderate",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 54,
            "inputs": {
              "primary_language": "PHP",
              "largest_source_bytes": 905742,
              "source_files_sampled": 268,
              "oversized_source_files": 7
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "PHP without a type-check config",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_typecheck_config_language",
                    "params": {
                      "language": "PHP"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "7/268 source files over 60KB",
                "points": 53.6,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 268,
                      "oversized": 7
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "at_risk",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "example_dirs": [
                "cookbook"
              ],
              "has_mcp_signal": false,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "cookbook",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "cookbook"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token",
    "packagist package 'laravel/laravel' points at a different repository (https://github.com/laravel/laravel); excluded from ecosystem scoring"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-25T07:21:37.729280Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/l/linuxserver/Heimdall.svg",
  "full_name": "linuxserver/Heimdall",
  "license_state": "standard",
  "license_spdx": "MIT"
}

Bewertungen sind Signale, keine Garantien. Sie spiegeln öffentlich sichtbare Praxis auf GitHub wider — kein Code-Audit und keine Sicherheitsgarantie.

Fehlende Daten werden ausgeschlossen und die Gewichte neu normiert, nie als null bewertet. Die Methodik ist versioniert und offen: Metriken v1.13.0, Schema v0.27.0 — vollständige Methodik · Metriken-Wiki.

Wie ein einzelnes Ergebnis im Gesamtregister steht: aggregierte StatistikenPackagist.