Öffentliches Register
Software-GesundheitsberichtSchema 0.30.0 · Metriken 2.5.0 · 2026-08-04 02:20 UTC

vernak2539 / astro-rehype-relative-markdown-links

Rehype Plugin for Astro that allows for usage of relative links between markdown files

TypeScriptKeine Lizenz erkannt★ 28 Sterne⑂ 6 Forksseit Mai 2023Auf GitHub ansehen ↗

vernak2539/astro-rehype-relative-markdown-links erreicht einen Gesundheitsindex von 60 von 100 und liegt damit im Bereich Mittel. Am stärksten schneidet es bei Engineering Quality (71/100) ab, am schwächsten bei Security (45/100). Zuletzt vor 10 Tagen aktualisiert. Ein einzelner Mitwirkender trägt den Großteil der jüngsten Arbeit.

60
gesamt / 100
Mittel

Software-Gesundheitsindex

Metriken werden auf einer standardisierten Skala von 1–100 in gewichtete Kategorien gruppiert. Der Gesamtwert beginnt als ihr gewichtetes Mittel, kalibriert auf die Verteilung des öffentlichen Registers, sodass die Stufen Perzentilbedeutung tragen; sobald öffentliche Evidenz die Richtlinie für Hochrisikojurisdiktionen auslöst, wird die Bewertung angepasst und erhält die Obergrenze Gefährdet von 34.

60
Außergewöhnlich93-100Die Spitzengruppe des Registers (≈ obere 5 %); erfüllt im Wesentlichen alle geprüften Kriterien
Exzellent80-92Durchgehend stark; geringfügige Lücken
Gut65-79Gesund; Lücken sind begrenzt und beherrschbar
Mittel50-64Akzeptabel mit deutlichen Lücken; Überprüfung empfohlen
Schwach35-49Wesentliche Schwächen in mehreren Bereichen
Gefährdet20-34Erhebliche Schwächen; eine Übernahme erfordert Vorsicht
Kritisch1-19Schwerwiegende 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.

Der gewichtete Gesamtwert 57 wird auf der veröffentlichten Indexskala auf 60 kalibriert (Register-Kalibrierung 2026-08-02).

Eigentümerschaft

Alex VernacchiaPersönliches Konto
77 Follower97 öffentliche Reposseit Dez. 2010DoorDash/Deliveroo

Dieses Repository gehört einem persönlichen Konto. Ein Projekt mit nur einem Eigentümer trägt ein höheres Kontinuitätsrisiko als ein organisationsgetragenes.

Paket-Ökosysteme

RegistryPaketVersionDownloads / MonatVersionenZuletzt veröffentlichtTags
npmastro-rehype-relative-markdown-links0.19.234.32633vor 10 Tagenastrorehypemarkdownrelative-links

Metriken nach Kategorie

Vitalität

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

63Mittel · 21 % des Gesamtindex
Wie die Bewertung erfolgt
28.8/36Push-Aktualität — letzter Push vor 10 Tagen
1.4/36Commit-Rhythmus — 2/52 Wochen mit Commits
9.4/18Commit-Volumen — 10 Commits im letzten Jahr
4/10OpenSSF Scorecard: Maintained — 4 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 4
Verwendete Eingangsdaten
commits_last_year10
human_commit_share1
days_since_last_push10
active_weeks_last_year2
Wie die Bewertung erfolgt
27/27Liefert Releases aus — 13 Releases veröffentlicht
36/36Release-Aktualität — letztes Release vor 10 Tagen
19.8/27Release-Rhythmus — ein Release etwa alle 90,2 Tage
0/10OpenSSF Scorecard: Signed-Releases — keine Daten
Verwendete Eingangsdaten
releases_count13
latest_release_tagv0.19.2
releases_from_tagsnein
days_since_latest_release10
mean_days_between_releases90,2
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?

46Schwach · 17 % des Gesamtindex
Wie die Bewertung erfolgt
23.2/60Stars — 28 Stars
5.8/25Forks — 6 Forks
0/15Watcher — 0 Watcher
Verwendete Eingangsdaten
forks6
stars28
watchers0
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Wie die Bewertung erfolgt
22.5/22.5README
0/22.5Lizenz — keine Lizenzdatei erkannt
18/18CONTRIBUTING-Leitfaden
0/13.5Verhaltenskodex
0/7.2Issue-Vorlage
0/6.3PR-Vorlage
Verwendete Eingangsdaten
has_readmeja
has_licensenein
readme_badges0
has_contributingja
has_issue_templatenein
has_code_of_conductnein
readme_badge_services
has_pull_request_templatenein
Wie die Bewertung erfolgt
60.5/80Downloads pro Monat — 34.326 Downloads/Monat über npm
0/20Abhängige in der Registry — von diesem Ökosystem nicht ausgewiesen
Verwendete Eingangsdaten
packagesastro-rehype-relative-markdown-links
dependents
ecosystemsnpm
total_downloads
monthly_downloads34.326
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Abhängige in der Registry. Die verbleibenden Gewichte wurden renormalisiert.

Nachhaltigkeit & Governance

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

60Mittel · 23 % des Gesamtindex
Wie die Bewertung erfolgt
9/54Bus-Faktor — 1 Beitragende decken die Hälfte aller Commits ab
3.6/22.5Commit-Verteilung — wichtigste beitragende Person verfasste 84 % der Commits
6.8/13.5Breite der Beitragenden — 5 Beitragende
6/10OpenSSF Scorecard: Contributors — project has 2 contributing companies or organizations -- score normalized to 6
Verwendete Eingangsdaten
bus_factor1
contributors_sampled5
top_contributor_share0,84
Wie die Bewertung erfolgt
32.2/42Issue-Lösungsquote — 77 % der Issues geschlossen
27.8/30PR-Annahme — 50/54 entschiedene PRs gemergt
0/13Newcomer PR acceptance — kein PR eines Erstbeitragenden in 30 Tagen entschieden
0/15OpenSSF Scorecard: Code-Review — Found 1/30 approved changesets -- score normalized to 0
Verwendete Eingangsdaten
merged_prs50
open_issues7
closed_issues23
prs_merged_7d0
prs_decided_7d0
prs_merged_30d1
prs_decided_30d1
issue_closed_ratio0,767
closed_unmerged_prs4
first_time_authors_30d0
first_time_prs_merged_30d0
first_time_prs_decided_30d0
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): newcomer_pr_acceptance. Die verbleibenden Gewichte wurden renormalisiert.
Wie die Bewertung erfolgt
10/30Organisatorische Trägerschaft — persönliches (Nutzer-)Konto
0/20Verifizierte Domain — für Nutzerkonten nicht anwendbar
13.6/25Reichweite des Inhabers — 77 Follower von vernak2539
25/25Kontohistorie — 97 öffentliche Repos, Kontoalter ca. 15 Jahre
Verwendete Eingangsdaten
followers77
owner_typeUser
is_verified
owner_loginvernak2539
public_repos97
account_age_days5.712
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Verifizierte Domain. Die verbleibenden Gewichte wurden renormalisiert.

Paketpflege

100Außergewöhnlich
Wie die Bewertung erfolgt
25/25Veröffentlicht & auflösbar — 1 Paket(e) auf npm
35/35Veröffentlichungsaktualität — letzte Veröffentlichung vor 10 Tagen
20/20Versionshistorie — 33 veröffentlichte Versionen
20/20Nicht veraltet — aktiv, nicht veraltet oder zurückgezogen
Verwendete Eingangsdaten
packagesastro-rehype-relative-markdown-links
ecosystemsnpm
any_deprecatednein
min_days_since_publish10

Engineering-Qualität

Sind grundlegende Engineering- und Dokumentationspraktiken vorhanden?

71Gut · 19 % des Gesamtindex
Wie die Bewertung erfolgt
24/24CI-Workflows — 4 Workflow(s)
24/24Tests vorhanden
0/16Linter-Konfiguration
0/9.6Pre-Commit-Hooks
0/6.4.editorconfig
10/20OpenSSF Scorecard: CI-Tests — 4 out of 7 merged PRs checked by a CI test -- score normalized to 5
Verwendete Eingangsdaten
has_cija
has_testsja
has_editorconfignein
has_linter_confignein
has_precommit_confignein

Dokumentation

90Exzellent
Wie die Bewertung erfolgt
30/30README
25/25Dokumentationsverzeichnis
15/15Dokumentations-/Homepage-Site — https://www.npmjs.com/package/astro-rehype-relative-markdown-links
10/10Repository-Beschreibung
0/10Topics
10/10Wiki
Verwendete Eingangsdaten
topics
has_wikija
homepagehttps://www.npmjs.com/package/astro-rehype-relative-markdown-links
has_readmeja
has_docs_dirja
has_descriptionja

Sicherheit

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

45Schwach · 16 % des Gesamtindex

Sicherheitslage

31Gefährdet
Wie die Bewertung erfolgt
7.5/7.5Binary-Artifacts — no binaries found in the repo
0/7.5Branch-Protection — branch protection not enabled on development/release branches
1.2/2.5CI-Tests — 4 out of 7 merged PRs checked by a CI test -- score normalized to 5
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 1/30 approved changesets -- score normalized to 0
1.5/2.5Contributors — project has 2 contributing companies or organizations -- score normalized to 6
10/10Dangerous-Workflow — no dangerous workflow patterns detected
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
0/2.5Lizenz — license file not detected
3/7.5Maintained — 4 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 4
5/5Packaging — packaging workflow detected
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
2/5SAST — SAST tool is not run on all commits -- score normalized to 4
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — keine Daten
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
0/7.5Vulnerabilities — 36 existing vulnerabilities detected
Verwendete Eingangsdaten
sourceopenssf_scorecard
checks_evaluated17
scorecard_versionv5.5.0
checks_inconclusive1
scorecard_aggregate3,1
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): signed_releases. Die verbleibenden Gewichte wurden renormalisiert.

Abhängigkeits-Advisories

100Außergewöhnlich
Wie die Bewertung erfolgt
35/35Direkte Abhängigkeiten ohne bekannte Advisories — keine direkte Abhängigkeit trägt ein bekanntes Advisory
25/25Indirekte Abhängigkeiten ohne bekannte Advisories — keine indirekte Abhängigkeit trägt ein bekanntes Advisory
0/40Keine offenen Advisories — kein Advisory trägt ein Veröffentlichungsdatum
Verwendete Eingangsdaten
sourceosv
advisories0
affected_packages0
assessed_packages30
unassessed_packages0
affected_by_severitynone
direct_affected_packages0
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Keine offenen Advisories. Die verbleibenden Gewichte wurden renormalisiert. Abgeglichen wurde die Laufzeit-Abhängigkeitshülle von npm:astro-rehype-relative-markdown-links@0.19.2 — das, was die Installation des veröffentlichten Pakets nach sich zieht — mit 30 Paketen. Erreichbarkeit wird nicht analysiert.

AI Readiness

Wie gut ist das Repository dafür ausgestattet, mit KI-Coding-Agenten entwickelt und gepflegt zu werden? Trägt ein bewusst kleines Gewicht (4 %): Agenten-Tooling ist ein echtes Pflegesignal, doch ein Repository ohne jedes Signal kann weiterhin 100/100 erreichen.

48Schwach · 4 % des Gesamtindex
Wie die Bewertung erfolgt
0/45Agentenanweisungen — keine CLAUDE.md / AGENTS.md / Editor-Regeln
0/15Maschinenlesbare Doku (llms.txt)
30.9/40Lesbare Commit-Historie — 58 von 100 menschlichen Commits benennen ihre Absicht (strukturierter Betreff oder erläuternder Text)
Verwendete Eingangsdaten
has_llms_txtnein
legible_history_share0,58
agent_instruction_files
agent_instruction_max_bytes
Wie die Bewertung erfolgt
0/18Bootstrap mit einem Befehl
22/22Automatisierte Tests
0/11Lint-/Format-Konfiguration
11/11Statische Typprüfung — tsconfig.json
10/10Reproduzierbare Umgebung — lockfile
0/10Belegte Agentenpraxis — keine von Agenten verfassten Commits unter den letzten 100
0/8Automatisierte Wartung — keine automatisierten Abhängigkeits-Updates beobachtet
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Verwendete Eingangsdaten
has_nixnein
has_testsja
lockfilesyarn.lock
has_dockerfilenein
typed_languageja
bootstrap_files
has_devcontainernein
has_linter_confignein
typecheck_configstsconfig.json
agent_commit_share0
toolchain_manifests
dependency_bot_commit_share0
Wie die Bewertung erfolgt
45/45Typprüfbarer Code — TypeScript (statisch typisiert)
48.9/55Handhabbare Dateigrößen — 1/9 Quelldateien über 60 KB
Verwendete Eingangsdaten
primary_languageTypeScript
largest_source_bytes2.764.795
source_files_sampled9
oversized_source_files1

Eckdaten

28GitHub-Sterne
5Mitwirkende
10Commits, letzte 12 Monate
10Tage seit letztem Push
13Releases
1Bus-Faktor
7offene Issues
npmPaket-Ökosysteme

Warnungen zur Datenerhebung

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token

Weitere Details

Stern- und Fork-Verlauf 0 ★ / 6 ⇿
0Sterne
6Forks
10Releases

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.

123456612023-122025-022026-03
Major 0Minor 5Patch 5

Jeder Punkt umfasst 3 Tage.

OpenSSF Scorecard 3.1 / 10
3.1Gesamtwert

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-08-04 02:20 UTC

10Binary-Artifactsno binaries found in the repo
0Branch-Protectionbranch protection not enabled on development/release branches
5CI-Tests4 out of 7 merged PRs checked by a CI test -- score normalized to 5
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 1/30 approved changesets -- score normalized to 0
6Contributorsproject has 2 contributing companies or organizations -- score normalized to 6
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
0Licenselicense file not detected
4Maintained4 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 4
10Packagingpackaging workflow detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
4SASTSAST tool is not run on all commits -- score normalized to 4
0Security-Policysecurity policy file not detected
k. A.Signed-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
0Vulnerabilities36 existing vulnerabilities detected
Direkte Abhängigkeiten 8
RegistryPaketVersionsvorgabeManifest
npmcatch-unknown^2.0.0package.json
npmdebug^4.4.0package.json
npmgithub-slugger^2.0.0package.json
npmgray-matter^4.0.3package.json
npmis-absolute-url^4.0.1package.json
npmunified^11.0.5package.json
npmunist-util-visit^5.0.0package.json
npmzod^3.23.8package.json
Alle Abhängigkeiten 409

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

RegistryPaketVersionBeziehung
npmcatch-unknown2.0.0direkt
npmdebug4.4.0direkt
npmgithub-slugger2.0.0direkt
npmgray-matter4.0.3direkt
npmis-absolute-url4.0.1direkt
npmunified11.0.4direkt
npmunified11.0.5direkt
npmunist-util-visit5.0.0direkt
npmzod3.23.8direkt
npm@esbuild/aix-ppc640.23.1indirekt
npm@esbuild/aix-ppc640.24.0indirekt
npm@esbuild/android-arm0.23.1indirekt
npm@esbuild/android-arm0.24.0indirekt
npm@esbuild/android-arm640.23.1indirekt
npm@esbuild/android-arm640.24.0indirekt
npm@esbuild/android-x640.23.1indirekt
npm@esbuild/android-x640.24.0indirekt
npm@esbuild/darwin-arm640.23.1indirekt
npm@esbuild/darwin-arm640.24.0indirekt
npm@esbuild/darwin-x640.23.1indirekt
npm@esbuild/darwin-x640.24.0indirekt
npm@esbuild/freebsd-arm640.23.1indirekt
npm@esbuild/freebsd-arm640.24.0indirekt
npm@esbuild/freebsd-x640.23.1indirekt
npm@esbuild/freebsd-x640.24.0indirekt
npm@esbuild/linux-arm0.23.1indirekt
npm@esbuild/linux-arm0.24.0indirekt
npm@esbuild/linux-arm640.23.1indirekt
npm@esbuild/linux-arm640.24.0indirekt
npm@esbuild/linux-ia320.23.1indirekt
npm@esbuild/linux-ia320.24.0indirekt
npm@esbuild/linux-loong640.23.1indirekt
npm@esbuild/linux-loong640.24.0indirekt
npm@esbuild/linux-mips64el0.23.1indirekt
npm@esbuild/linux-mips64el0.24.0indirekt
npm@esbuild/linux-ppc640.23.1indirekt
npm@esbuild/linux-ppc640.24.0indirekt
npm@esbuild/linux-riscv640.23.1indirekt
npm@esbuild/linux-riscv640.24.0indirekt
npm@esbuild/linux-s390x0.23.1indirekt
npm@esbuild/linux-s390x0.24.0indirekt
npm@esbuild/linux-x640.23.1indirekt
npm@esbuild/linux-x640.24.0indirekt
npm@esbuild/netbsd-x640.23.1indirekt
npm@esbuild/netbsd-x640.24.0indirekt
npm@esbuild/openbsd-arm640.23.1indirekt
npm@esbuild/openbsd-arm640.24.0indirekt
npm@esbuild/openbsd-x640.23.1indirekt
npm@esbuild/openbsd-x640.24.0indirekt
npm@esbuild/sunos-x640.23.1indirekt
npm@esbuild/sunos-x640.24.0indirekt
npm@esbuild/win32-arm640.23.1indirekt
npm@esbuild/win32-arm640.24.0indirekt
npm@esbuild/win32-ia320.23.1indirekt
npm@esbuild/win32-ia320.24.0indirekt
npm@esbuild/win32-x640.23.1indirekt
npm@esbuild/win32-x640.24.0indirekt
npm@gerrit0/mini-shiki1.24.1indirekt
npm@iarna/toml2.2.5indirekt
npm@isaacs/cliui8.0.2indirekt
npm@isaacs/fs-minipass4.0.1indirekt
npm@jridgewell/gen-mapping0.3.8indirekt
npm@jridgewell/resolve-uri3.1.2indirekt
npm@jridgewell/set-array1.2.1indirekt
npm@jridgewell/sourcemap-codec1.5.0indirekt
npm@jridgewell/trace-mapping0.3.25indirekt
npm@npmcli/agent3.0.0indirekt
npm@npmcli/fs4.0.0indirekt
npm@pkgjs/parseargs0.11.0indirekt
npm@prettier/cli0.3.0indirekt
npm@rollup/rollup-android-arm-eabi4.28.1indirekt
npm@rollup/rollup-android-arm644.28.1indirekt
npm@rollup/rollup-darwin-arm644.28.1indirekt
npm@rollup/rollup-darwin-x644.28.1indirekt
npm@rollup/rollup-freebsd-arm644.28.1indirekt
npm@rollup/rollup-freebsd-x644.28.1indirekt
npm@rollup/rollup-linux-arm-gnueabihf4.28.1indirekt
npm@rollup/rollup-linux-arm-musleabihf4.28.1indirekt
npm@rollup/rollup-linux-arm64-gnu4.28.1indirekt
npm@rollup/rollup-linux-arm64-musl4.28.1indirekt
npm@rollup/rollup-linux-loongarch64-gnu4.28.1indirekt
npm@rollup/rollup-linux-powerpc64le-gnu4.28.1indirekt
npm@rollup/rollup-linux-riscv64-gnu4.28.1indirekt
npm@rollup/rollup-linux-s390x-gnu4.28.1indirekt
npm@rollup/rollup-linux-x64-gnu4.28.1indirekt
npm@rollup/rollup-linux-x64-musl4.28.1indirekt
npm@rollup/rollup-win32-arm64-msvc4.28.1indirekt
npm@rollup/rollup-win32-ia32-msvc4.28.1indirekt
npm@rollup/rollup-win32-x64-msvc4.28.1indirekt
npm@shikijs/engine-oniguruma1.24.0indirekt
npm@shikijs/types1.24.0indirekt
npm@shikijs/vscode-textmate9.3.0indirekt
npm@types/acorn4.0.6indirekt
npm@types/debug4.1.12indirekt
npm@types/estree1.0.6indirekt
npm@types/estree-jsx1.0.5indirekt
npm@types/hast3.0.3indirekt
npm@types/hast3.0.4indirekt
npm@types/mdast4.0.3indirekt
npm@types/ms0.7.34indirekt
npm@types/node18.19.31indirekt
npm@types/ungap__structured-clone1.2.0indirekt
npm@types/unist2.0.11indirekt
npm@types/unist3.0.2indirekt
npm@ungap/structured-clone1.2.0indirekt
npmabbrev2.0.0indirekt
npmacorn8.14.0indirekt
npmacorn-jsx5.3.2indirekt
npmagent-base7.1.3indirekt
npmansi-purge1.0.0indirekt
npmansi-regex5.0.1indirekt
npmansi-regex6.1.0indirekt
npmansi-styles4.3.0indirekt
npmansi-styles6.2.1indirekt
npmansi-truncate1.0.1indirekt
npmany-promise1.3.0indirekt
npmargparse1.0.10indirekt
npmargparse2.0.1indirekt
npmatomically2.0.2indirekt
npmbail2.0.2indirekt
npmbalanced-match1.0.2indirekt
npmbinary-extensions2.2.0indirekt
npmbrace-expansion2.0.1indirekt
npmbundle-require5.0.0indirekt
npmcac6.7.14indirekt
npmcacache19.0.1indirekt
npmccount2.0.1indirekt
npmcharacter-entities2.0.2indirekt
npmcharacter-entities-html42.1.0indirekt
npmcharacter-entities-legacy3.0.0indirekt
npmcharacter-reference-invalid2.0.1indirekt
npmchokidar4.0.3indirekt
npmchownr3.0.0indirekt
npmcolor-convert2.0.1indirekt
npmcolor-name1.1.4indirekt
npmcomma-separated-tokens2.0.3indirekt
npmcommander4.1.1indirekt
npmconsola3.2.3indirekt
npmcross-spawn7.0.6indirekt
npmdecode-named-character-reference1.0.2indirekt
npmdequal2.0.3indirekt
npmdettle1.0.1indirekt
npmdevlop1.1.0indirekt
npmeastasianwidth0.2.0indirekt
npmemoji-regex8.0.0indirekt
npmemoji-regex9.2.2indirekt
npmencoding0.1.13indirekt
npmentities4.5.0indirekt
npmenv-paths2.2.1indirekt
npmerr-code2.0.3indirekt
npmesbuild0.23.1indirekt
npmesbuild0.24.0indirekt
npmescape-string-regexp5.0.0indirekt
npmesmock2.6.9indirekt
npmesprima4.0.1indirekt
npmestree-util-is-identifier-name3.0.0indirekt
npmestree-util-visit2.0.0indirekt
npmexponential-backoff3.1.1indirekt
npmextend3.0.2indirekt
npmextend-shallow2.0.1indirekt
npmfast-ignore1.1.1indirekt
npmfault2.0.1indirekt
npmfdir6.4.2indirekt
npmfind-up-json2.0.2indirekt
npmforeground-child3.3.0indirekt
npmformat0.2.2indirekt
npmfs-minipass3.0.3indirekt
npmfsevents2.3.3indirekt
npmget-current-package1.0.0indirekt
npmget-tsconfig4.8.1indirekt
npmglob10.4.5indirekt
npmgraceful-fs4.2.11indirekt
npmgrammex3.1.2indirekt
npmhast-util-from-html2.0.1indirekt
npmhast-util-from-parse58.0.1indirekt
npmhast-util-parse-selector4.0.0indirekt
npmhast-util-raw9.0.1indirekt
npmhast-util-to-html9.0.0indirekt
npmhast-util-to-parse58.0.0indirekt
npmhast-util-whitespace3.0.0indirekt
npmhastscript8.0.0indirekt
npmhtml-void-elements3.0.0indirekt
npmhttp-cache-semantics4.1.1indirekt
npmhttp-proxy-agent7.0.2indirekt
npmhttps-proxy-agent7.0.6indirekt
npmhusky9.1.7indirekt
npmiconv-lite0.6.3indirekt
npmimport-meta-resolve4.0.0indirekt
npmimurmurhash0.1.4indirekt
npmini-simple-parser1.0.0indirekt
npmionstore1.0.0indirekt
npmip-address9.0.5indirekt
npmis-alphabetical2.0.1indirekt
npmis-alphanumerical2.0.1indirekt
npmis-binary-path2.1.0indirekt
npmis-decimal2.0.1indirekt
npmis-extendable0.1.1indirekt
npmis-fullwidth-code-point3.0.0indirekt
npmis-hexadecimal2.0.1indirekt
npmis-plain-obj4.1.0indirekt
npmisexe2.0.0indirekt
npmisexe3.1.1indirekt
npmjackspeak3.4.3indirekt
npmjoycon3.1.1indirekt
npmjs-yaml3.14.1indirekt
npmjs-yaml4.1.0indirekt
npmjsbn1.1.0indirekt
npmjson-sorted-stringify1.0.0indirekt
npmjson52.2.3indirekt
npmkasi1.1.0indirekt
npmkind-of6.0.3indirekt
npmlilconfig3.1.3indirekt
npmlines-and-columns1.2.4indirekt
npmlinkify-it5.0.0indirekt
npmload-tsconfig0.2.5indirekt
npmlodash.sortby4.7.0indirekt
npmlongest-streak3.1.0indirekt
npmlru-cache10.4.3indirekt
npmlunr2.3.9indirekt
npmmake-fetch-happen14.0.3indirekt
npmmarkdown-it14.1.0indirekt
npmmarkdown-table3.0.4indirekt
npmmdast-util-find-and-replace3.0.1indirekt
npmmdast-util-from-markdown2.0.2indirekt
npmmdast-util-frontmatter2.0.1indirekt
npmmdast-util-gfm3.0.0indirekt
npmmdast-util-gfm-autolink-literal2.0.1indirekt
npmmdast-util-gfm-footnote2.0.0indirekt
npmmdast-util-gfm-strikethrough2.0.0indirekt
npmmdast-util-gfm-table2.0.0indirekt
npmmdast-util-gfm-task-list-item2.0.0indirekt
npmmdast-util-mdx3.0.0indirekt
npmmdast-util-mdx-expression2.0.1indirekt
npmmdast-util-mdx-jsx3.1.3indirekt
npmmdast-util-mdxjs-esm2.0.1indirekt
npmmdast-util-phrasing4.1.0indirekt
npmmdast-util-to-hast13.0.2indirekt
npmmdast-util-to-markdown2.1.2indirekt
npmmdast-util-to-string4.0.0indirekt
npmmdast-util-toc7.1.0indirekt
npmmdurl2.0.0indirekt
npmmicromark4.0.1indirekt
npmmicromark-core-commonmark2.0.2indirekt
npmmicromark-extension-frontmatter2.0.0indirekt
npmmicromark-extension-gfm3.0.0indirekt
npmmicromark-extension-gfm-autolink-literal2.1.0indirekt
npmmicromark-extension-gfm-footnote2.1.0indirekt
npmmicromark-extension-gfm-strikethrough2.1.0indirekt
npmmicromark-extension-gfm-table2.1.0indirekt
npmmicromark-extension-gfm-tagfilter2.0.0indirekt
npmmicromark-extension-gfm-task-list-item2.1.0indirekt
npmmicromark-extension-mdx-expression3.0.0indirekt
npmmicromark-extension-mdx-jsx3.0.1indirekt
npmmicromark-extension-mdx-md2.0.0indirekt
npmmicromark-extension-mdxjs3.0.0indirekt
npmmicromark-extension-mdxjs-esm3.0.0indirekt
npmmicromark-factory-destination2.0.1indirekt
npmmicromark-factory-label2.0.1indirekt
npmmicromark-factory-mdx-expression2.0.2indirekt
npmmicromark-factory-space2.0.1indirekt
npmmicromark-factory-title2.0.1indirekt
npmmicromark-factory-whitespace2.0.1indirekt
npmmicromark-util-character2.0.1indirekt
npmmicromark-util-chunked2.0.1indirekt
npmmicromark-util-classify-character2.0.1indirekt
npmmicromark-util-combine-extensions2.0.1indirekt
npmmicromark-util-decode-numeric-character-reference2.0.2indirekt
npmmicromark-util-decode-string2.0.1indirekt
npmmicromark-util-encode2.0.0indirekt
npmmicromark-util-events-to-acorn2.0.2indirekt
npmmicromark-util-html-tag-name2.0.1indirekt
npmmicromark-util-normalize-identifier2.0.1indirekt
npmmicromark-util-resolve-all2.0.1indirekt
npmmicromark-util-sanitize-uri2.0.0indirekt
npmmicromark-util-subtokenize2.0.3indirekt
npmmicromark-util-symbol2.0.0indirekt
npmmicromark-util-types2.0.0indirekt
npmminimatch9.0.5indirekt
npmminipass3.3.6indirekt
npmminipass7.1.2indirekt
npmminipass-collect2.0.1indirekt
npmminipass-fetch4.0.0indirekt
npmminipass-flush1.0.5indirekt
npmminipass-pipeline1.2.4indirekt
npmminipass-sized1.0.3indirekt
npmminizlib3.0.1indirekt
npmmkdirp3.0.1indirekt
npmms2.1.3indirekt
npmmz2.7.0indirekt
npmnegotiator1.0.0indirekt
npmnode-gyp11.0.0indirekt
npmnopt8.0.0indirekt
npmobject-assign4.1.1indirekt
npmp-map7.0.3indirekt
npmpackage-json-from-dist1.0.1indirekt
npmparse-entities4.0.1indirekt
npmparse57.1.2indirekt
npmpath-key3.1.1indirekt
npmpath-scurry1.11.1indirekt
npmpicocolors1.1.1indirekt
npmpicomatch4.0.2indirekt
npmpinst3.0.0indirekt
npmpioppo1.1.0indirekt
npmpirates4.0.6indirekt
npmpostcss-load-config6.0.1indirekt
npmprettier4.0.0-alpha.8indirekt
npmproc-log5.0.0indirekt
npmpromise-make-naked2.1.1indirekt
npmpromise-retry2.0.1indirekt
npmproperty-information6.4.0indirekt
npmpunycode2.3.1indirekt
npmpunycode.js2.3.1indirekt
npmreaddirp4.0.2indirekt
npmrehype13.0.2indirekt
npmrehype-parse9.0.0indirekt
npmrehype-stringify10.0.0indirekt
npmremark15.0.1indirekt
npmremark-frontmatter5.0.0indirekt
npmremark-gfm4.0.0indirekt
npmremark-mdx3.1.0indirekt
npmremark-parse11.0.0indirekt
npmremark-stringify11.0.0indirekt
npmremark-toc9.0.0indirekt
npmresolve-from5.0.0indirekt
npmresolve-pkg-maps1.0.0indirekt
npmretry0.12.0indirekt
npmrimraf5.0.10indirekt
npmrollup4.28.1indirekt
npmsafer-buffer2.1.2indirekt
npmsection-matter1.0.0indirekt
npmsemver7.6.3indirekt
npmshebang-command2.0.0indirekt
npmshebang-regex3.0.0indirekt
npmsignal-exit4.1.0indirekt
npmsmart-buffer4.2.0indirekt
npmsocks2.8.3indirekt
npmsocks-proxy-agent8.0.5indirekt
npmsource-map0.8.0-beta.0indirekt
npmspace-separated-tokens2.0.2indirekt
npmspecialist1.4.0indirekt
npmsprintf-js1.0.3indirekt
npmsprintf-js1.1.3indirekt
npmssri12.0.0indirekt
npmstdin-blocker2.0.0indirekt
npmstring-width5.1.2indirekt
npmstring-width-cjs4.2.3indirekt
npmstringify-entities4.0.3indirekt
npmstrip-ansi7.1.0indirekt
npmstrip-ansi-cjs6.0.1indirekt
npmstrip-bom-string1.0.0indirekt
npmstubborn-fs1.2.5indirekt
npmsucrase3.35.0indirekt
npmtar7.4.3indirekt
npmthenify3.3.1indirekt
npmthenify-all1.6.0indirekt
npmtiny-bin1.7.0indirekt
npmtiny-colors2.1.2indirekt
npmtiny-cursor2.0.0indirekt
npmtiny-editorconfig1.0.0indirekt
npmtiny-jsonc1.0.1indirekt
npmtiny-levenshtein1.0.0indirekt
npmtiny-parse-argv2.4.0indirekt
npmtiny-readdir2.4.0indirekt
npmtiny-readdir-glob1.2.1indirekt
npmtiny-spinner2.0.3indirekt
npmtiny-truncate1.0.2indirekt
npmtiny-updater3.5.1indirekt
npmtinyexec0.3.1indirekt
npmtinyglobby0.2.10indirekt
npmto-vfile8.0.0indirekt
npmtr461.0.1indirekt
npmtree-kill1.2.2indirekt
npmtrim-lines3.0.1indirekt
npmtrough2.1.0indirekt
npmts-interface-checker0.1.13indirekt
npmtsup8.3.5indirekt
npmtsx4.19.2indirekt
npmtypedoc0.27.5indirekt
npmtypedoc-plugin-markdown4.3.3indirekt
npmtypedoc-plugin-remark1.2.1indirekt
npmtypedoc-plugin-zod1.3.1indirekt
npmtypescript5.7.2indirekt
npmuc.micro2.1.0indirekt
npmundici-types5.26.5indirekt
npmunique-filename4.0.0indirekt
npmunique-slug5.0.0indirekt
npmunist-util-is6.0.0indirekt
npmunist-util-position5.0.0indirekt
npmunist-util-position-from-estree2.0.0indirekt
npmunist-util-stringify-position4.0.0indirekt
npmunist-util-visit-parents6.0.1indirekt
npmvfile6.0.1indirekt
npmvfile-location5.0.2indirekt
npmvfile-message4.0.2indirekt
npmweb-namespaces2.0.1indirekt
npmwebidl-conversions4.0.2indirekt
npmwebworker-shim1.1.0indirekt
npmwhatwg-url7.1.0indirekt
npmwhen-exit2.1.2indirekt
npmwhich2.0.2indirekt
npmwhich5.0.0indirekt
npmworktank2.6.0indirekt
npmwrap-ansi8.1.0indirekt
npmwrap-ansi-cjs7.0.0indirekt
npmyallist4.0.0indirekt
npmyallist5.0.0indirekt
npmyaml2.6.1indirekt
npmzeptomatch1.2.2indirekt
npmzwitch2.0.4indirekt
Abhängigkeits-Advisories 0

Die Installation von npm:astro-rehype-relative-markdown-links@0.19.2 zieht 30 Pakete nach sich, direkt und transitiv: 0 tragen bekannte Advisories, davon 0 direkte Abhängigkeiten.

Keine bekannten Advisories betreffen die bewerteten Abhängigkeiten.

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": [],
      "is_fork": false,
      "size_kb": 1832,
      "has_wiki": true,
      "homepage": "https://www.npmjs.com/package/astro-rehype-relative-markdown-links",
      "languages": {
        "MDX": 43,
        "TypeScript": 77319
      },
      "pushed_at": "2026-07-24T12:36:13Z",
      "created_at": "2023-05-04T10:35:37Z",
      "owner_type": "User",
      "updated_at": "2026-07-24T12:37:23Z",
      "description": "Rehype Plugin for Astro that allows for usage of relative links between markdown files",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": null,
      "default_branch": "main",
      "license_spdx_raw": null,
      "primary_language": "TypeScript",
      "significant_languages": [
        "TypeScript"
      ]
    },
    "owner": {
      "blog": "https://byvernacchia.com",
      "name": "Alex Vernacchia",
      "type": "User",
      "login": "vernak2539",
      "company": "DoorDash/Deliveroo",
      "location": "Canada",
      "followers": 77,
      "avatar_url": "https://avatars.githubusercontent.com/u/521270?v=4",
      "created_at": "2010-12-13T15:00:32Z",
      "is_verified": null,
      "public_repos": 97,
      "account_age_days": 5712
    },
    "license": {
      "state": "absent",
      "spdx_id": null,
      "raw_spdx": null,
      "file_present": false,
      "scorecard_found": false,
      "profile_has_license": false
    },
    "activity": {
      "releases": [
        {
          "tag": "v0.19.2",
          "kind": "patch",
          "published_at": "2026-07-24T12:35:39Z"
        },
        {
          "tag": "v0.19.1",
          "kind": "patch",
          "published_at": "2026-07-24T12:33:06Z"
        },
        {
          "tag": "v0.19.0",
          "kind": "minor",
          "published_at": "2026-03-19T01:11:57Z"
        },
        {
          "tag": "v0.18.1",
          "kind": "patch",
          "published_at": "2024-12-27T12:12:17Z"
        },
        {
          "tag": "v0.18.0",
          "kind": "minor",
          "published_at": "2024-12-26T16:26:44Z"
        },
        {
          "tag": "v0.17.3",
          "kind": "patch",
          "published_at": "2024-12-12T13:30:52Z"
        },
        {
          "tag": "v0.17.0",
          "kind": "minor",
          "published_at": "2024-12-05T14:24:46Z"
        },
        {
          "tag": "v0.16.0",
          "kind": "minor",
          "published_at": "2024-11-27T15:31:21Z"
        },
        {
          "tag": "v0.15.0",
          "kind": "minor",
          "published_at": "2024-05-16T14:23:59Z"
        },
        {
          "tag": "v0.14.1",
          "kind": "patch",
          "published_at": "2024-05-03T14:42:05Z"
        },
        {
          "tag": "v0.14.0",
          "kind": "minor",
          "published_at": "2024-05-03T14:37:13Z"
        },
        {
          "tag": "v0.13.3",
          "kind": "patch",
          "published_at": "2024-05-03T14:23:19Z"
        },
        {
          "tag": "v0.13.2",
          "kind": "patch",
          "published_at": "2024-05-03T14:18:32Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "1c46f3b026eec5ea1741345aed44b05b4763ec95",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update CHANGELOG.md",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2026-07-24T12:36:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a63ddcfe946af8047263a29c14b0024165ebb6aa",
          "body": null,
          "is_bot": false,
          "headline": "Release v0.19.2",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2026-07-24T12:35:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c7c11a5fecc8472e9d7b06492f205bc5369360c1",
          "body": null,
          "is_bot": false,
          "headline": "0.19.1",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2026-07-24T12:32:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "85d796c4ab61d79a58b83b56bff5546f7ee6010a",
          "body": "* chore: Support Astro v7 in deps",
          "is_bot": false,
          "headline": "Feature/astro v7 support (#85)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2026-07-24T12:26:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ca780e068d99dfaa05b17b45f234af17aaa9cd9d",
          "body": null,
          "is_bot": false,
          "headline": "chore(docs): fix documentation link in README",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2026-03-19T01:19:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "be46b9bc8c3bffd753926d97be86b77db1ea6c43",
          "body": null,
          "is_bot": false,
          "headline": "chore(ci): update node version used (#83)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2026-03-19T01:17:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f3b8e09db16235cc3474d7f33ae496801afb284e",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update CHANGELOG.md",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2026-03-19T01:09:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "73dee89a357e2010650a245408bb0eaea7a43ca4",
          "body": null,
          "is_bot": false,
          "headline": "Release v0.19.0",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2026-03-19T01:06:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e61e350626d98650c86f846ae023cca611506307",
          "body": null,
          "is_bot": false,
          "headline": "feat(ci): test against v24 lts (#82)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2026-03-19T01:03:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "41bdcd6f7285ecce7b4cdf9cd0bda91a81946936",
          "body": null,
          "is_bot": false,
          "headline": "fix: support Astro v6 (#81)",
          "author_name": "Ocavue",
          "author_login": "ocavue",
          "committed_at": "2026-03-19T01:00:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5e80019597a2f88e3b6051a2abc34dd9f0973fed",
          "body": null,
          "is_bot": false,
          "headline": "fix(workflows): require publish",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-27T13:10:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cde84bc88af3298eaffcc9c17a2dd09d7ae1130f",
          "body": null,
          "is_bot": false,
          "headline": "fix(workflows): move resuable workflow test into npm publish workflow",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-27T13:08:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1d5cc5262a127015adbd6b58d4d2f6ed90873cce",
          "body": null,
          "is_bot": false,
          "headline": "fix(workflows): try to pass secrets again - 1",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-27T13:05:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8f1815a831bb1e3d9b7f25843ee721950cf8c1fb",
          "body": null,
          "is_bot": false,
          "headline": "fix(workflows): try to pass secrets again",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-27T13:03:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "93f30bb967622ce62c625ad4a6c84838ce7430c6",
          "body": null,
          "is_bot": false,
          "headline": "fix(workflows): inherit secrets from top-level",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-27T13:02:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b01bf173e2d4a84df9351c672ed834200297288c",
          "body": null,
          "is_bot": false,
          "headline": "test: resusable workflow",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-27T12:59:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a663c9f0a0a0fee20f6fb54f116289c899593982",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update generated docs (docs/)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-27T12:12:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "aa0802f25680c6b5bebfc3db779f5eb8467a5ba4",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update CHANGELOG.md",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-27T12:10:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "32896600b375dd8bacf0ba1917cc044e8db95b2c",
          "body": null,
          "is_bot": false,
          "headline": "Release v0.18.1",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-27T12:09:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8cdec567e008bd43c3da5a53cd01c8bcf7b9fb79",
          "body": null,
          "is_bot": false,
          "headline": "fix(types): update exported types (#79)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-27T12:07:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d95671bc1a3e8faaadf0bcbf695cf95518117a89",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update generated docs (docs/)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-26T16:26:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9c3d3307dc1c68aac3ee8f7f570a5258ba91552b",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update CHANGELOG.md",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-26T16:25:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d43942192e97000f4f6563b888e9789408d0e382",
          "body": null,
          "is_bot": false,
          "headline": "fix(gh-actions): checkout code before changelog and docs update",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-26T16:23:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0f7de43cbc915629db4663b60158ef59748f924c",
          "body": null,
          "is_bot": false,
          "headline": "Release v0.18.0",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-26T16:20:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cf256630a45bc46eb05d2c9f11d6a1215c453fc7",
          "body": "* feat(ts): initial move to typescript (no tests)\n\n* feat(ts): update type of default export\n\n* feat(ts): add tsx as dep to run node test runner with typescript support\n\n* feat(ts): covert test files to ts\n\n* feat(ts): udpate test files and get runner working\n\n* feat(ts): build package before publis\n[…]\npdate barrel file\n\n* fix(tsconfig): update tsconfig for typedoc\n\n- move to es2022 instead of esnext\n\n* fix: add checks for potentially non-existing variables\n\n* fix(docs): link to options type in docs",
          "is_bot": false,
          "headline": "Move to TypeScript (#78)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-26T16:14:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "213dce7a1072f0597a4071b7f7580bb24e181bd0",
          "body": null,
          "is_bot": false,
          "headline": "chore(husky): add husky and run prettier pre-commit (#77)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-19T15:29:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c29309b7a3285c58dad79d3aea9ab1357d683c1e",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update generated docs (docs/)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-12T13:31:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9cf30f6627fd016585b1310b06b2b0ee02b0937c",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update CHANGELOG.md",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-12T13:29:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f3b36a992193729ed8296aa3938ffb28dee3ce37",
          "body": null,
          "is_bot": false,
          "headline": "fix(workflow): fix npm publish workflow (hopefully again)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-12T13:28:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "220c6815a20e4e354dda9a8a1fa9585a5bcf5a2e",
          "body": null,
          "is_bot": false,
          "headline": "fix(workflow): fix npm publish workflow (hopefully)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-12T13:27:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7697141b0d60f38e1c85db720db4104b0dcbd087",
          "body": null,
          "is_bot": false,
          "headline": "fix(workflow): add token to env of changelog generation in npm publish",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-12T13:22:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d83f40595af2a49285f1b22f3769245b3bdd272a",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update CHANGELOG.md",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-12T13:20:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "422db32004045a2cf5c8f3fa6501df6ed051c0f3",
          "body": null,
          "is_bot": false,
          "headline": "Release v0.17.3",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-12T13:18:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "249a57367d4ea314c7cfdb6d3257110ea315e290",
          "body": null,
          "is_bot": false,
          "headline": "Release 0.17.2",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-12T13:17:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4cc1057b18930fce4bb02d44a1db760d3ac8b135",
          "body": null,
          "is_bot": false,
          "headline": "fix(workflow): add contents: write to permissions of npm publish",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-12T13:16:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4479eecfd636b1028c534055c8f96b292fd453e0",
          "body": "* fix: run publish on main. add chaining. only run based on commit message\r\n\r\n* fix: add release cmd command",
          "is_bot": false,
          "headline": "Publish update (#73)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-12T13:13:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5773784511a061fd3f9b1b4dab5d3f90c7f5ae4d",
          "body": null,
          "is_bot": false,
          "headline": "0.17.1",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-12T12:38:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "433bc6ddfa14f8da17850d7a794b10e47a4518f1",
          "body": "* chore: update dependencies\r\n\r\n* chore: update docs\r\n\r\n* chore: prettier format\r\n\r\n* chore: move to devDependencies",
          "is_bot": false,
          "headline": "chore: update docs (#70)",
          "author_name": "techfg",
          "author_login": "techfg",
          "committed_at": "2024-12-11T14:32:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "305e7e2c40bfab8a48939edf8849366d4534314e",
          "body": "* fix(workflow): remove generation of changelog in publish\r\n\r\n* feat(workflow): use reusable workflows in publish\r\n\r\nAfter publish:\r\n- generate docs\r\n- generate changelog\r\n\r\nhttps://docs.github.com/en/actions/sharing-automations/reusing-workflows\r\n\r\n* chore(pack): remove changelog and readme from files in package.json",
          "is_bot": false,
          "headline": "Update publish workflow (#71)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-11T14:28:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b6ad1411fd7c70954de1dfdf9213115c6c452f42",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update CHANGELOG.md",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-05T14:23:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9bd566425fcb89ff04d8775fa85a7896f72fe9fb",
          "body": null,
          "is_bot": false,
          "headline": "fix(changelog): use github env token when generating (not installing)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-05T14:22:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "50bf4155438e15405b0fac2d4ffe82e9105a7038",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update generated docs (docs/)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-05T14:16:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1dd09c30090f320758ea3551eb9d4a54d95ab92d",
          "body": null,
          "is_bot": false,
          "headline": "0.17.0",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-05T14:15:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7d9443e4fd8fd6793c54b44dca9f05f60b815f3a",
          "body": null,
          "is_bot": false,
          "headline": "chore(peerdeps): allow for astro v5 (#68)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-05T14:10:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "63713cb90021b54077a23cbb0eb9332aa6a870e4",
          "body": null,
          "is_bot": false,
          "headline": "chore(readme): update readme again for recent changes",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-05T10:32:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fa9fcc7ef30f3336aad5fba1041bbb895d9d90f0",
          "body": "* chore(readme): update assumptions based on recent collection mapping work\r\n\r\n* chore(readme): update installation command\r\n\r\n* chore(readme): revamp readme sections\r\n\r\n* chore(readme): update node and astro versions",
          "is_bot": false,
          "headline": "Update readme (#67)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-05T10:29:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8738a171cb651af807d560ae0e0e25a922d6055e",
          "body": "… URL paths (#50)\n\n- allows for individual collection configuration\r\n\r\n---------\r\n\r\nCo-authored-by: Alex Vernacchia <alex.vernacchia@deliveroo.co.uk>",
          "is_bot": false,
          "headline": "feat: add support for specifying collection names used in transformed…",
          "author_name": "techfg",
          "author_login": "techfg",
          "committed_at": "2024-12-05T10:02:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c34c4d702573403a19acb7b2faf97c5efd05522a",
          "body": null,
          "is_bot": false,
          "headline": "chore(yarn): upgrade yarn version (#65)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-03T13:58:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ec2655f41d45a0c786d64fbb46caa00e7d50f652",
          "body": "* chore(changelog): remove branch setting on workflow_dispatch\r\n\r\n* chore(publish): remove docs from packaging\r\n\r\n* chore(publish): delete docs directory before publish\r\n\r\n- yarn won't ignore docs/README.md for some reason, so we delete it\r\n  instead\r\n\r\n* chore(docs): generate docs after publish\r\n\r\n- don't regenerate docs on push to main (things can get out of sync)",
          "is_bot": false,
          "headline": "Update GH Actions - Align docs to releases + chores (#64)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-03T11:31:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0af3c3f2c684fec63c064ac8a594a874395b8001",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update generated docs (docs/)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-12-02T15:29:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b456988db4bc08023e4e0ee2529d48d1ce50e5bb",
          "body": "…emove contentPath + contentPathMode) (#49)\n\n\r\n---------\r\n\r\nCo-authored-by: Alex Vernacchia <alex.vernacchia@deliveroo.co.uk>",
          "is_bot": false,
          "headline": "feat: Add srcDir & align collection base on a per collection basis (r…",
          "author_name": "techfg",
          "author_login": "techfg",
          "committed_at": "2024-12-02T15:29:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b7a3558e1d4f589bffd54220a13cca774a4129ca",
          "body": "…erty\n\nfix: remove invalid workflow dispatch property",
          "is_bot": false,
          "headline": "Merge pull request #63 from techfg/fix/invalid-workflow-dispatch-prop…",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-11-27T16:06:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6283a970ad04c6f84b8ed6e1edf25bc407467ae7",
          "body": null,
          "is_bot": false,
          "headline": "chore: revert docs changes",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-11-27T16:00:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8f62706e91a27bf195b79e414c626250115c7faa",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update CHANGELOG.md",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-11-27T15:30:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cd5dfc68cf5b3b46e28510c4c62825524c523f7a",
          "body": null,
          "is_bot": false,
          "headline": "0.16.0",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-11-27T15:30:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cd67a9dd4ad50630e7a7866e78663b6943fd3f07",
          "body": "workflow_dispatch does not support the `branches` property.  Per the [docs](https://docs.github.com/en/actions/writing-workflows/choosing-when-your-workflow-runs/events-that-trigger-workflows#workflow_dispatch), the workflow must exist in the default branch but since it is run manually, you chose which branch you want to run the workflow on when manually invoking the workflow.",
          "is_bot": false,
          "headline": "chore: remove invalid workflow_dispatch property",
          "author_name": "techfg",
          "author_login": "techfg",
          "committed_at": "2024-11-24T03:40:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fe969aea0b99381e9affd04e5d6c7b50d7de8b5a",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update generated docs (docs/)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-11-23T17:31:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "41ba9b80e8d69f56d7ae50722a43bde3c353dbea",
          "body": "…re-invalid\n\nfix: do not transform links outside of a content collection directory",
          "is_bot": false,
          "headline": "Merge pull request #58 from techfg/fix/links-outside-collection-dir-a…",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-11-08T15:26:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e255f32ba24e5a577f748dfca4948709750c3f6d",
          "body": null,
          "is_bot": false,
          "headline": "fix: do not transform links outside of a collection directory (#57)",
          "author_name": "techfg",
          "author_login": "techfg",
          "committed_at": "2024-05-16T14:27:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "30039e06b7038106c849494e036d384dce606111",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update CHANGELOG.md",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-16T14:24:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "755cfd9304fce170ceb7ea0eaa63074344df1678",
          "body": null,
          "is_bot": false,
          "headline": "0.15.0",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-16T14:23:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bcb2364d0f1d856df82fd3f4727aaf8adcb746d4",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update generated docs (docs/)",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-16T14:22:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "00ac6e66d2d936795157e35b6bfaeebcccb6cc2d",
          "body": "fix: `basePath` option name should align with Astro `base` option name (#46)",
          "is_bot": false,
          "headline": "Merge pull request #48 from techfg/fix/rename-basepath-option",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-16T14:22:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4cccc4069e58d0341bf1d2dd3d74f59290b2f765",
          "body": null,
          "is_bot": false,
          "headline": "reset docs to master",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-16T14:19:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "975a7cbea9f6d0e213d35b781be2ad7a9f915867",
          "body": null,
          "is_bot": false,
          "headline": "fix: rename basePath to base",
          "author_name": "techfg",
          "author_login": "techfg",
          "committed_at": "2024-05-16T14:19:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1dbebaec61202fa97bfe3e86a9ca6b535d5e3749",
          "body": null,
          "is_bot": false,
          "headline": "chore: update tests",
          "author_name": "techfg",
          "author_login": "techfg",
          "committed_at": "2024-05-16T14:19:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "84f97c69c53bc7e6fe26d6dc89e8ec300fc25b4b",
          "body": "run tests with node.js v22.x",
          "is_bot": false,
          "headline": "Merge pull request #61 from vernak2539/node-22",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-16T14:17:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "425abae0fd3efec3960057e29b4f95aa27e30c8b",
          "body": "automated doc gen: install deps",
          "is_bot": false,
          "headline": "Merge pull request #60 from vernak2539/fix-auto-doc-gen",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-16T14:16:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "76035ad6dae727b78eb30d81696978da0664c0c8",
          "body": null,
          "is_bot": false,
          "headline": "run tests with node.js v22.x",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-16T14:15:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "347fed9081b826e1ad0a695a5ebb643d47a0ac15",
          "body": null,
          "is_bot": false,
          "headline": "automated doc gen: install deps",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-16T14:15:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c94dab4792b933b51ff3dd54bb9b7cfcedd1d453",
          "body": "update docs automatically on push to master",
          "is_bot": false,
          "headline": "Merge pull request #59 from vernak2539/generate-docs",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-16T14:12:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e99a323b4a32c7f9e97337e8da5bbad5e9f7c8cf",
          "body": null,
          "is_bot": false,
          "headline": "update docs automatically on push to master",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-16T14:11:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a0f6582457a533a6b5ea8560641c3aa740aac1f9",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update CHANGELOG.md",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-03T14:42:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "24c02ab6e08a41c063b4a761fe2e4c85d5a5c392",
          "body": null,
          "is_bot": false,
          "headline": "0.14.1",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-03T14:41:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c69f6e33bf09bf969479882dd3a061a87c3b6eb1",
          "body": "fix: consistent trailing slash on `index.md` urls",
          "is_bot": false,
          "headline": "Merge pull request #56 from techfg/fix/index-pages-trailing-slash",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-03T14:40:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dae310106867fbebb1321e71acc3bbddabb56702",
          "body": null,
          "is_bot": false,
          "headline": "fix: consistent trailing slash on index.md urls",
          "author_name": "techfg",
          "author_login": "techfg",
          "committed_at": "2024-05-03T14:38:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "82af44c0d021b132f8d744c86e85ca091f87a43d",
          "body": null,
          "is_bot": false,
          "headline": "chore: add test fixture",
          "author_name": "techfg",
          "author_login": "techfg",
          "committed_at": "2024-05-03T14:38:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7289457d86e83af5d1fe1c08c177321aeac6f24f",
          "body": null,
          "is_bot": false,
          "headline": "chore: update tests",
          "author_name": "techfg",
          "author_login": "techfg",
          "committed_at": "2024-05-03T14:38:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5d5545906164ecce3e9b96f5d9808028d49d5fb9",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update CHANGELOG.md",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-03T14:37:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9f8069c65b8724eaf61447c1b3cd18abdb003bc8",
          "body": null,
          "is_bot": false,
          "headline": "0.14.0",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-03T14:37:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5d799211e10b2441e2cdcec58df58968302e3831",
          "body": "perf: cache frontmatter",
          "is_bot": false,
          "headline": "Merge pull request #51 from techfg/chore/cache-matter",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-03T14:35:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7abdc5f3a24a78d43f66a0d45c56713c5840aac5",
          "body": null,
          "is_bot": false,
          "headline": "chore: namespace env variable",
          "author_name": "techfg",
          "author_login": "techfg",
          "committed_at": "2024-05-03T14:31:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1bb5a4174956b261a0825454791a1fadec572c5d",
          "body": null,
          "is_bot": false,
          "headline": "chore: disable cache during test",
          "author_name": "techfg",
          "author_login": "techfg",
          "committed_at": "2024-05-03T14:31:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b76f496cfbb924d1417ff8c5d7c2712fb64a20d4",
          "body": null,
          "is_bot": false,
          "headline": "perf: cache frontmatter data",
          "author_name": "techfg",
          "author_login": "techfg",
          "committed_at": "2024-05-03T14:31:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "646a7431ed0a51ff63949399a6ef3f46c26ab6e8",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update CHANGELOG.md",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-03T14:23:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "92c62e2d21e01209f957a47b650f83ea644ce1e9",
          "body": null,
          "is_bot": false,
          "headline": "0.13.3",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-03T14:22:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0e37ee179aed88ccd3692be2997d8750c53a1103",
          "body": "…tion\n\nchore: improve relative link validation",
          "is_bot": false,
          "headline": "Merge pull request #36 from techfg/chore/improve-relative-link-valida…",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-03T14:22:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f4284023deb458545fc60eb225e2a67e8294fca9",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update CHANGELOG.md",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-03T14:18:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "79ec4b43959a86c7e8082c0ddf812104c1560e62",
          "body": null,
          "is_bot": false,
          "headline": "0.13.2",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-03T14:18:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "00ea4ed1515205351d34cc372dee8d5824794255",
          "body": "fix: type import and test name",
          "is_bot": false,
          "headline": "Merge pull request #55 from techfg/fix/typings-and-tests",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-05-03T14:15:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ad1accabfe50845297a2a18ffb31351edcc67826",
          "body": null,
          "is_bot": false,
          "headline": "fix: test name",
          "author_name": "techfg",
          "author_login": "techfg",
          "committed_at": "2024-04-27T01:22:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4d1420ed9a40cd4ff156046dba0bd3429805f40a",
          "body": null,
          "is_bot": false,
          "headline": "fix: type import",
          "author_name": "techfg",
          "author_login": "techfg",
          "committed_at": "2024-04-27T01:22:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "da651dc05193854f8042c9b43d447270516883bf",
          "body": null,
          "is_bot": false,
          "headline": "[skip ci] Update CHANGELOG.md",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-04-19T14:33:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8532795df272aa82187df1ccfe4ef89aed85e39e",
          "body": null,
          "is_bot": false,
          "headline": "Release v0.13.1",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-04-19T14:32:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "94b1735d5270e3e87ebf1c43971b82fc0b314793",
          "body": "fix: exclude files with underscore in path under content dir",
          "is_bot": false,
          "headline": "Merge pull request #37 from techfg/issue-25",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-04-19T14:31:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "98de69ebc30e80471bfd65d5684c7aa1a1473914",
          "body": null,
          "is_bot": false,
          "headline": "fix(changelog): allow for gh cli to be used in action",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-04-19T14:29:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "31a940db0fb6849845b5e6a4a903debe2bb9e353",
          "body": null,
          "is_bot": false,
          "headline": "Release v0.13.0",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-04-19T14:14:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cb3cdfa9935a7278d7340e5b2be337288a52c92b",
          "body": "fix: only transform anchor elements",
          "is_bot": false,
          "headline": "Merge pull request #34 from techfg/fix/only-transform-anchor-elements",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-04-19T14:13:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8488047a6e6311b9cd6c9d05b534252fa986b688",
          "body": "fix(changelog): trigger update-changelog workflow from publish",
          "is_bot": false,
          "headline": "Merge pull request #44 from vernak2539/update-changelog-generation-again",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-04-19T10:37:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3cb978bc90c4c5e39516bd4b502084838c86e6fc",
          "body": null,
          "is_bot": false,
          "headline": "fix(changelog): trigger update-changelog workflow from publish",
          "author_name": "Alex Vernacchia",
          "author_login": "vernak2539",
          "committed_at": "2024-04-19T10:36:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 13,
      "commits_last_year": 10,
      "latest_release_at": "2026-07-24T12:35:39Z",
      "latest_release_tag": "v0.19.2",
      "releases_from_tags": false,
      "days_since_last_push": 10,
      "active_weeks_last_year": 2,
      "days_since_latest_release": 10,
      "mean_days_between_releases": 90.2
    },
    "artifacts": {
      "collected": true,
      "structure": [],
      "declarations": [
        {
          "name": "astro-rehype-relative-markdown-links",
          "path": "package.json",
          "tokens": [
            "npm.entry",
            "npm.peer_dependencies"
          ],
          "ecosystem": "npm"
        }
      ]
    },
    "community": {
      "has_readme": true,
      "has_license": false,
      "readme_badges": {
        "hosts": [],
        "total": 0,
        "header": 0,
        "collected": true,
        "has_inspect_badge": false
      },
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 42,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "astro-rehype-relative-markdown-links",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "astro",
            "rehype",
            "markdown",
            "relative links"
          ],
          "ecosystem": "npm",
          "categories": [],
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/astro-rehype-relative-markdown-links",
          "declared_type": null,
          "is_deprecated": false,
          "latest_version": "0.19.2",
          "repository_url": "https://github.com/vernak2539/astro-rehype-relative-markdown-links",
          "versions_count": 33,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 34326,
          "first_published_at": "2023-05-06T13:07:39.930000Z",
          "latest_published_at": "2026-07-24T12:35:50.654000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 10
        }
      ]
    },
    "popularity": {
      "forks": 6,
      "stars": 28,
      "watchers": 0,
      "fork_history": {
        "days": [
          {
            "date": "2023-12-29",
            "count": 1
          },
          {
            "date": "2024-01-23",
            "count": 1
          },
          {
            "date": "2024-02-15",
            "count": 1
          },
          {
            "date": "2024-04-07",
            "count": 1
          },
          {
            "date": "2025-12-17",
            "count": 1
          },
          {
            "date": "2026-03-11",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 6,
        "total_forks": 6
      },
      "star_history": null,
      "open_issues_and_prs": 8
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "tsconfig.json"
      ],
      "toolchain_manifests": [],
      "largest_source_bytes": 2764795,
      "source_files_sampled": 9,
      "oversized_source_files": 1,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "published_package",
        "source": "osv",
        "findings": [],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {},
        "advisory_count": 0,
        "affected_count": 0,
        "assessed_count": 30,
        "malicious_count": 0,
        "assessed_package": "npm:astro-rehype-relative-markdown-links@0.19.2",
        "unassessed_count": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "npm"
      ],
      "dependencies": [
        {
          "name": "catch-unknown",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.0"
        },
        {
          "name": "debug",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.4.0"
        },
        {
          "name": "github-slugger",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.0"
        },
        {
          "name": "gray-matter",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.0.3"
        },
        {
          "name": "is-absolute-url",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.0.1"
        },
        {
          "name": "unified",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^11.0.5"
        },
        {
          "name": "unist-util-visit",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.0.0"
        },
        {
          "name": "zod",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.23.8"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "catch-unknown",
            "direct": true,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": true,
            "version": "4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "github-slugger",
            "direct": true,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "gray-matter",
            "direct": true,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-absolute-url",
            "direct": true,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unified",
            "direct": true,
            "version": "11.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "unified",
            "direct": true,
            "version": "11.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit",
            "direct": true,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": true,
            "version": "3.23.8",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-arm64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-arm64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@gerrit0/mini-shiki",
            "direct": false,
            "version": "1.24.1",
            "ecosystem": "npm"
          },
          {
            "name": "@iarna/toml",
            "direct": false,
            "version": "2.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "@isaacs/cliui",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@isaacs/fs-minipass",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/gen-mapping",
            "direct": false,
            "version": "0.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/resolve-uri",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/set-array",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.25",
            "ecosystem": "npm"
          },
          {
            "name": "@npmcli/agent",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@npmcli/fs",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@pkgjs/parseargs",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@prettier/cli",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm-eabi",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm64",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-arm64",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-x64",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-arm64",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-x64",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-musleabihf",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-gnu",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-musl",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loongarch64-gnu",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-powerpc64le-gnu",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-gnu",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-s390x-gnu",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-musl",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-arm64-msvc",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-ia32-msvc",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-msvc",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/engine-oniguruma",
            "direct": false,
            "version": "1.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/types",
            "direct": false,
            "version": "1.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/vscode-textmate",
            "direct": false,
            "version": "9.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/acorn",
            "direct": false,
            "version": "4.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/debug",
            "direct": false,
            "version": "4.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree-jsx",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/hast",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/hast",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdast",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/ms",
            "direct": false,
            "version": "0.7.34",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "18.19.31",
            "ecosystem": "npm"
          },
          {
            "name": "@types/ungap__structured-clone",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "2.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@ungap/structured-clone",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "abbrev",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-jsx",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "agent-base",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-purge",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "6.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-truncate",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "any-promise",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "1.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "atomically",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "bail",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "binary-extensions",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "bundle-require",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cac",
            "direct": false,
            "version": "6.7.14",
            "ecosystem": "npm"
          },
          {
            "name": "cacache",
            "direct": false,
            "version": "19.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ccount",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-html4",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-legacy",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-reference-invalid",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "chownr",
            "direct": false,
            "version": "3.0.0",
            "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": "comma-separated-tokens",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "consola",
            "direct": false,
            "version": "3.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "decode-named-character-reference",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "dequal",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "dettle",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "devlop",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "eastasianwidth",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "9.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "encoding",
            "direct": false,
            "version": "0.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "env-paths",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "err-code",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "esmock",
            "direct": false,
            "version": "2.6.9",
            "ecosystem": "npm"
          },
          {
            "name": "esprima",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-is-identifier-name",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-visit",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "exponential-backoff",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "extend",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "extend-shallow",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fast-ignore",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "fault",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fdir",
            "direct": false,
            "version": "6.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "find-up-json",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "foreground-child",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "format",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "fs-minipass",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "get-current-package",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-tsconfig",
            "direct": false,
            "version": "4.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "10.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "grammex",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-from-html",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-from-parse5",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-parse-selector",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-raw",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-html",
            "direct": false,
            "version": "9.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-parse5",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-whitespace",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hastscript",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-void-elements",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "http-cache-semantics",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "http-proxy-agent",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "https-proxy-agent",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "husky",
            "direct": false,
            "version": "9.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "import-meta-resolve",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "imurmurhash",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "ini-simple-parser",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ionstore",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ip-address",
            "direct": false,
            "version": "9.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphabetical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphanumerical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-binary-path",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-decimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-extendable",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-fullwidth-code-point",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-hexadecimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "jackspeak",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "joycon",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "3.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsbn",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-sorted-stringify",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "kasi",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "kind-of",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "lilconfig",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "lines-and-columns",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "linkify-it",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "load-tsconfig",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.sortby",
            "direct": false,
            "version": "4.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "longest-streak",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "10.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "lunr",
            "direct": false,
            "version": "2.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "make-fetch-happen",
            "direct": false,
            "version": "14.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "markdown-it",
            "direct": false,
            "version": "14.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "markdown-table",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-find-and-replace",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-from-markdown",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-frontmatter",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-autolink-literal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-footnote",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-strikethrough",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-table",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-task-list-item",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx-expression",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx-jsx",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdxjs-esm",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-phrasing",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-hast",
            "direct": false,
            "version": "13.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-markdown",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-string",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-toc",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdurl",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-core-commonmark",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-frontmatter",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-autolink-literal",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-footnote",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-strikethrough",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-table",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-tagfilter",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-task-list-item",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdx-expression",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdx-jsx",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdx-md",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdxjs",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdxjs-esm",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-destination",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-label",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-mdx-expression",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-space",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-title",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-whitespace",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-character",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-chunked",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-classify-character",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-combine-extensions",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-decode-numeric-character-reference",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-decode-string",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-encode",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-events-to-acorn",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-html-tag-name",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-normalize-identifier",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-resolve-all",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-sanitize-uri",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-subtokenize",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-symbol",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-types",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "9.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "3.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "7.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "minipass-collect",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "minipass-fetch",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "minipass-flush",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "minipass-pipeline",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "minipass-sized",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "minizlib",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mkdirp",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "mz",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "negotiator",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-gyp",
            "direct": false,
            "version": "11.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "nopt",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "object-assign",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "p-map",
            "direct": false,
            "version": "7.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "package-json-from-dist",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse-entities",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": false,
            "version": "7.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-scurry",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "pinst",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "pioppo",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "pirates",
            "direct": false,
            "version": "4.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-load-config",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": false,
            "version": "4.0.0-alpha.8",
            "ecosystem": "npm"
          },
          {
            "name": "proc-log",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "promise-make-naked",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "promise-retry",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "property-information",
            "direct": false,
            "version": "6.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "punycode.js",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "rehype",
            "direct": false,
            "version": "13.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-parse",
            "direct": false,
            "version": "9.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-stringify",
            "direct": false,
            "version": "10.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark",
            "direct": false,
            "version": "15.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "remark-frontmatter",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark-gfm",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark-mdx",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark-parse",
            "direct": false,
            "version": "11.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark-stringify",
            "direct": false,
            "version": "11.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark-toc",
            "direct": false,
            "version": "9.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-pkg-maps",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "retry",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "5.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "safer-buffer",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "section-matter",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.6.3",
            "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": "signal-exit",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "smart-buffer",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "socks",
            "direct": false,
            "version": "2.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "socks-proxy-agent",
            "direct": false,
            "version": "8.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.8.0-beta.0",
            "ecosystem": "npm"
          },
          {
            "name": "space-separated-tokens",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "specialist",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "sprintf-js",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "sprintf-js",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "ssri",
            "direct": false,
            "version": "12.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "stdin-blocker",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "string-width-cjs",
            "direct": false,
            "version": "4.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "stringify-entities",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi-cjs",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "strip-bom-string",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "stubborn-fs",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "sucrase",
            "direct": false,
            "version": "3.35.0",
            "ecosystem": "npm"
          },
          {
            "name": "tar",
            "direct": false,
            "version": "7.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "thenify",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "thenify-all",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-bin",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-colors",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-cursor",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-editorconfig",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-jsonc",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-levenshtein",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-parse-argv",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-readdir",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-readdir-glob",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-spinner",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-truncate",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-updater",
            "direct": false,
            "version": "3.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.10",
            "ecosystem": "npm"
          },
          {
            "name": "to-vfile",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "tr46",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tree-kill",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "trim-lines",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "trough",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-interface-checker",
            "direct": false,
            "version": "0.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "tsup",
            "direct": false,
            "version": "8.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "tsx",
            "direct": false,
            "version": "4.19.2",
            "ecosystem": "npm"
          },
          {
            "name": "typedoc",
            "direct": false,
            "version": "0.27.5",
            "ecosystem": "npm"
          },
          {
            "name": "typedoc-plugin-markdown",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "typedoc-plugin-remark",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "typedoc-plugin-zod",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "5.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "uc.micro",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "5.26.5",
            "ecosystem": "npm"
          },
          {
            "name": "unique-filename",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unique-slug",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-is",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-position",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-position-from-estree",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-stringify-position",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit-parents",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "vfile",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "vfile-location",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "vfile-message",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "web-namespaces",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "webworker-shim",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-url",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "when-exit",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "worktank",
            "direct": false,
            "version": "2.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi-cjs",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "2.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "zeptomatch",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "zwitch",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 409,
        "direct_count": 9,
        "indirect_count": 400
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 1,
        "merged_prs": 50,
        "open_issues": 7,
        "closed_ratio": 0.767,
        "closed_issues": 23,
        "closed_unmerged_prs": 4
      },
      "bus_factor": 1,
      "bot_contributors": 0,
      "top_contributors": [
        {
          "type": "User",
          "login": "vernak2539",
          "commits": 215,
          "avatar_url": "https://avatars.githubusercontent.com/u/521270?v=4"
        },
        {
          "type": "User",
          "login": "techfg",
          "commits": 38,
          "avatar_url": "https://avatars.githubusercontent.com/u/4323995?v=4"
        },
        {
          "type": "User",
          "login": "7frank",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/20373789?v=4"
        },
        {
          "type": "User",
          "login": "marcortola",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/15958009?v=4"
        },
        {
          "type": "User",
          "login": "ocavue",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/24715727?v=4"
        }
      ],
      "contributors_sampled": 5,
      "top_contributor_share": 0.84
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "npm-publish.yml",
        "test-and-build.yml",
        "update-changelog.yml",
        "update-generated-docs.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [],
      "has_editorconfig": false,
      "has_linter_config": false,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "yarn.lock"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 0,
            "reason": "branch protection not enabled on development/release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 5,
            "reason": "4 out of 7 merged PRs checked by a CI test -- score normalized to 5",
            "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/30 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 6,
            "reason": "project has 2 contributing companies or organizations -- score normalized to 6",
            "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": 0,
            "reason": "no 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": 0,
            "reason": "license file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 4,
            "reason": "4 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 4",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": 10,
            "reason": "packaging workflow detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 0,
            "reason": "dependency not pinned by hash detected -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 4,
            "reason": "SAST tool is not run on all commits -- score normalized to 4",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 0,
            "reason": "security policy file not 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": "36 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "1c46f3b026eec5ea1741345aed44b05b4763ec95",
        "ran_at": "2026-08-04T02:20:26Z",
        "aggregate_score": 3.1,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "recent_prs": {
        "merged_7d": 0,
        "decided_7d": 0,
        "merged_30d": 1,
        "authors_30d": 1,
        "decided_30d": 1,
        "sample_size": 54,
        "window_days": 30,
        "sample_exhausted": false,
        "authors_probed_30d": 1,
        "newcomer_merged_30d": 0,
        "bot_prs_excluded_30d": 0,
        "newcomer_authors_30d": 0,
        "newcomer_decided_30d": 0
      },
      "ci_last_run_at": "2026-08-01T03:04:14Z",
      "oldest_open_prs": [
        {
          "number": 52,
          "created_at": "2024-04-25T05:20:40Z",
          "last_comment_at": "2024-12-27T22:40:04Z",
          "last_comment_author": "techfg"
        }
      ],
      "last_merged_pr_at": "2026-07-24T12:26:19Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 26,
          "created_at": "2024-04-11T04:56:58Z",
          "last_comment_at": "2024-12-27T19:31:56Z",
          "last_comment_author": "techfg"
        },
        {
          "number": 27,
          "created_at": "2024-04-11T05:22:33Z",
          "last_comment_at": "2024-04-25T06:40:35Z",
          "last_comment_author": "techfg"
        },
        {
          "number": 35,
          "created_at": "2024-04-13T05:10:04Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 45,
          "created_at": "2024-04-20T00:57:37Z",
          "last_comment_at": "2024-12-19T19:30:45Z",
          "last_comment_author": "techfg"
        },
        {
          "number": 53,
          "created_at": "2024-04-25T05:25:42Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 74,
          "created_at": "2024-12-13T05:36:24Z",
          "last_comment_at": "2024-12-19T19:35:19Z",
          "last_comment_author": "techfg"
        },
        {
          "number": 75,
          "created_at": "2024-12-13T18:03:27Z",
          "last_comment_at": "2024-12-27T19:40:14Z",
          "last_comment_author": "techfg"
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/vernak2539/astro-rehype-relative-markdown-links",
    "host": "github.com",
    "name": "astro-rehype-relative-markdown-links",
    "owner": "vernak2539"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "moderate",
      "name": "Overall health",
      "note": "The weighted overall 57 is calibrated to 60 on the published index scale (record calibration 2026-08-02).",
      "notes": [
        {
          "code": "overall_calibration",
          "params": {
            "raw": 57,
            "calibrated": 60,
            "calibration": "2026-08-02"
          }
        }
      ],
      "value": 60,
      "inputs": {
        "security": 45,
        "vitality": 63,
        "community": 46,
        "governance": 60,
        "calibration": "2026-08-02",
        "engineering": 71,
        "ai_readiness": 48,
        "weighted_overall_raw": 57
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "moderate",
        "name": "Vitality",
        "value": 63,
        "weight": 0.21,
        "metrics": [
          {
            "key": "development_activity",
            "band": "weak",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 44,
            "inputs": {
              "commits_last_year": 10,
              "human_commit_share": 1,
              "days_since_last_push": 10,
              "active_weeks_last_year": 2
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 10 days ago",
                "points": 28.8,
                "status": "partial",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 10
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "2/52 weeks with commits",
                "points": 1.4,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 2
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "10 commits in the last year",
                "points": 9.4,
                "status": "partial",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 10
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "4 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 4",
                "points": 4,
                "status": "partial",
                "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": 13,
              "latest_release_tag": "v0.19.2",
              "releases_from_tags": false,
              "days_since_latest_release": 10,
              "mean_days_between_releases": 90.2
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "13 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 13
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 10 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 10
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~90.2 days",
                "points": 19.8,
                "status": "partial",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 90.2
                    }
                  }
                ],
                "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": "exceptional",
            "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": 11,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 11 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 11
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "weak",
        "name": "Community & Adoption",
        "value": 46,
        "weight": 0.17,
        "metrics": [
          {
            "key": "popularity",
            "band": "at_risk",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 29,
            "inputs": {
              "forks": 6,
              "stars": 28,
              "watchers": 0,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "28 stars",
                "points": 23.2,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 28
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "6 forks",
                "points": 5.8,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 6
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "0 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "weak",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 45,
            "inputs": {
              "has_readme": true,
              "has_license": false,
              "readme_badges": 0,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "readme_badge_services": [],
              "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": "no license file detected",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "license_absent",
                    "params": {}
                  }
                ],
                "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": 0,
                "status": "missed",
                "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
              }
            ]
          },
          {
            "key": "ecosystem_adoption",
            "band": "good",
            "name": "Ecosystem adoption (downloads)",
            "note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "registry_dependents"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 76,
            "inputs": {
              "packages": [
                "astro-rehype-relative-markdown-links"
              ],
              "dependents": null,
              "ecosystems": "npm",
              "total_downloads": null,
              "monthly_downloads": 34326
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "34,326 downloads/month across npm",
                "points": 60.5,
                "status": "partial",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 34326,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 80
              },
              {
                "key": "registry_dependents",
                "name": "Registry dependents",
                "detail": "not reported by this ecosystem",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_reported_by_this_ecosystem",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 60,
        "weight": 0.23,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "at_risk",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 25,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 5,
              "top_contributor_share": 0.84
            },
            "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 84% of commits",
                "points": 3.6,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 84
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "5 contributors",
                "points": 6.8,
                "status": "partial",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 5
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 2 contributing companies or organizations -- score normalized to 6",
                "points": 6,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": "Excluded from scoring (no data or not applicable): Newcomer PR acceptance. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "newcomer_pr_acceptance"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 69,
            "inputs": {
              "merged_prs": 50,
              "open_issues": 7,
              "closed_issues": 23,
              "prs_merged_7d": 0,
              "prs_decided_7d": 0,
              "prs_merged_30d": 1,
              "prs_decided_30d": 1,
              "issue_closed_ratio": 0.767,
              "closed_unmerged_prs": 4,
              "first_time_authors_30d": 0,
              "first_time_prs_merged_30d": 0,
              "first_time_prs_decided_30d": 0
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "77% of issues closed",
                "points": 32.2,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 77
                    }
                  }
                ],
                "max_points": 42
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "50/54 decided PRs merged",
                "points": 27.8,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 50,
                      "decided": 54
                    }
                  }
                ],
                "max_points": 30
              },
              {
                "key": "newcomer_pr_acceptance",
                "name": "Newcomer PR acceptance",
                "detail": "no first-time contributor's PR decided in 30d",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_newcomer_prs",
                    "params": {
                      "days": 30
                    }
                  }
                ],
                "max_points": 13
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 1/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "moderate",
            "name": "Ownership & stewardship",
            "note": "Excluded from scoring (no data or not applicable): Verified domain. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "verified_domain"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 61,
            "inputs": {
              "followers": 77,
              "owner_type": "User",
              "is_verified": null,
              "owner_login": "vernak2539",
              "public_repos": 97,
              "account_age_days": 5712
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "personal (user) account",
                "points": 10,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_personal",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": "not applicable to user accounts",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_applicable_to_user_accounts",
                    "params": {}
                  }
                ],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "77 followers of vernak2539",
                "points": 13.6,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 77,
                      "login": "vernak2539"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "97 public repos, account ~15 yr old",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 97
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 15
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "exceptional",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "astro-rehype-relative-markdown-links"
              ],
              "ecosystems": "npm",
              "any_deprecated": false,
              "min_days_since_publish": 10
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on npm",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 10 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 10
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "33 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 33
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "good",
        "name": "Engineering Quality",
        "value": 71,
        "weight": 0.19,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "moderate",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 58,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": false,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "4 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 4
                    }
                  }
                ],
                "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": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "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": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "4 out of 7 merged PRs checked by a CI test -- score normalized to 5",
                "points": 10,
                "status": "partial",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "excellent",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "topics": [],
              "has_wiki": true,
              "homepage": "https://www.npmjs.com/package/astro-rehype-relative-markdown-links",
              "has_readme": true,
              "has_docs_dir": true,
              "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": 25,
                "status": "met",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": "https://www.npmjs.com/package/astro-rehype-relative-markdown-links",
                "points": 15,
                "status": "met",
                "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": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "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": "weak",
        "name": "Security",
        "value": 45,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 31,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 17,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 1,
              "scorecard_aggregate": 3.1
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection not enabled on development/release branches",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "4 out of 7 merged PRs checked by a CI test -- score normalized to 5",
                "points": 1.2,
                "status": "partial",
                "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/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 2 contributing companies or organizations -- score normalized to 6",
                "points": 1.5,
                "status": "partial",
                "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": "no update tool detected",
                "points": 0,
                "status": "missed",
                "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 not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "4 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 4",
                "points": 3,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 4",
                "points": 2,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file not detected",
                "points": 0,
                "status": "missed",
                "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": "36 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "exceptional",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): No advisories left outstanding. Remaining weights renormalized. Matched the npm:astro-rehype-relative-markdown-links@0.19.2 runtime dependency closure — what installing the published package pulls in — 30 packages. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "no_advisories_left_outstanding"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_published",
                "params": {
                  "package": "npm:astro-rehype-relative-markdown-links@0.19.2",
                  "assessed": 30
                }
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "source": "osv",
              "advisories": 0,
              "affected_packages": 0,
              "assessed_packages": 30,
              "unassessed_packages": 0,
              "affected_by_severity": "none",
              "direct_affected_packages": 0
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "no direct dependency carries a known advisory",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "no_direct_advisories",
                    "params": {}
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "no indirect dependency carries a known advisory",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "no_indirect_advisories",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory carries a publication date",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_no_publication_date",
                    "params": {}
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "exceptional",
            "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": 30,
              "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": "exceptional",
            "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"
              ],
              "commit_weight_rule": {
                "min_commits": 50,
                "min_commit_share": 0.1
              },
              "review_only_matches": 0,
              "below_threshold_exposures": [],
              "assessed_self_published_locations": 5
            },
            "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": "weak",
        "name": "AI Readiness",
        "value": 48,
        "weight": 0.04,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "at_risk",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 31,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.58,
              "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": "58 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 30.9,
                "status": "partial",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 58,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "weak",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 43,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "yarn.lock"
              ],
              "has_dockerfile": false,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": false,
              "typecheck_configs": [
                "tsconfig.json"
              ],
              "agent_commit_share": 0,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "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": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "tsconfig.json"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "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 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "exceptional",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 94,
            "inputs": {
              "primary_language": "TypeScript",
              "largest_source_bytes": 2764795,
              "source_files_sampled": 9,
              "oversized_source_files": 1
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "TypeScript (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "TypeScript"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "1/9 source files over 60KB",
                "points": 48.9,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 9,
                      "oversized": 1
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? Carries a deliberately small weight: agent tooling is a real maintenance signal, but its absence must never gate the top of the scale (calibration saturates at raw 91, so 100/100 remains reachable with AI Readiness at zero)."
      }
    ],
    "classification": {
      "top": [
        "library"
      ],
      "labels": [
        "library"
      ],
      "scores": {
        "plugin": 2,
        "library": 17
      },
      "primary": "library",
      "evidence": [
        {
          "tier": "declared",
          "label": "library",
          "source": "npm.entry",
          "weight": 8
        },
        {
          "tier": "distribution",
          "label": "library",
          "source": "registry:npm",
          "weight": 6
        },
        {
          "tier": "declared",
          "label": "library",
          "source": "npm.peer_dependencies",
          "weight": 3
        },
        {
          "tier": "description",
          "label": "plugin",
          "source": "description:plugin",
          "weight": 2
        }
      ],
      "artifacts": [
        {
          "path": "package.json",
          "labels": [
            "library"
          ],
          "ecosystem": "npm"
        }
      ],
      "confidence": "high",
      "host_extension": false,
      "runs_as_process": false,
      "consumed_by_code": true
    },
    "metrics_version": "2.5.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
  ],
  "report_type": "repository",
  "generated_at": "2026-08-04T02:20:36.836053Z",
  "schema_version": "0.30.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/v/vernak2539/astro-rehype-relative-markdown-links.svg",
  "full_name": "vernak2539/astro-rehype-relative-markdown-links",
  "license_state": "absent",
  "license_spdx": null
}

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 v2.5.0, Schema v0.30.0 — vollständige Methodik · Metriken-Wiki.

Wie ein einzelnes Ergebnis im Gesamtregister steht: aggregierte Statistikennpm.