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

bastianh / screeps-client

TypeScriptISC★ 3 Sterne⑂ 3 Forksseit Mai 2026Auf GitHub ansehen ↗

bastianh/screeps-client erreicht einen Gesundheitsindex von 58 von 100 und liegt damit im Bereich Mittel. Am stärksten schneidet es bei Vitality (77/100) ab, am schwächsten bei Community & Adoption (37/100). Zuletzt vor 5 Tagen aktualisiert. Ein einzelner Mitwirkender trägt den Großteil der jüngsten Arbeit.

58
gesamt / 100
Mittel

Software-Gesundheitsindex

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

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

Bewertungsprofil

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

Eigentümerschaft

Bastian HoyerPersönliches Konto
26 Follower28 öffentliche Reposseit Juli 2008

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öffentlicht
npmscreeps-client0.18.03.10435vor 5 Tagen
npmscreepsmod-client-new0.2.252.19928vor 5 Tagen
npmscreeps-client-proxy0.1.32133vor 5 Tagen
npmscreeps-connectivity0.16.02.40324vor 5 Tagen
npmxxscreeps-mod-client0.3.82.62230vor 5 Tagen

Metriken nach Kategorie

Vitalität

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

77Gut · 22 % des Gesamtindex
Wie die Bewertung erfolgt
36/36Push-Aktualität — letzter Push vor 5 Tagen
7.6/36Commit-Rhythmus — 11/52 Wochen mit Commits
18/18Commit-Volumen — 440 Commits im letzten Jahr
0/10OpenSSF Scorecard: Maintained — project was created within the last 90 days. Please review its contents carefully
Verwendete Eingangsdaten
commits_last_year440
human_commit_share0,91
days_since_last_push5
active_weeks_last_year11

Release-Disziplin

100Exzellent
Wie die Bewertung erfolgt
27/27Liefert Releases aus — 100 Releases veröffentlicht
36/36Release-Aktualität — letztes Release vor 5 Tagen
27/27Release-Rhythmus — ein Release etwa alle 0,8 Tage
0/10OpenSSF Scorecard: Signed-Releases — keine Daten
Verwendete Eingangsdaten
releases_count100
latest_release_tagscreepsmod-client-new@0.2.25
releases_from_tagsnein
days_since_latest_release5
mean_days_between_releases0,8
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?

37Gefährdet · 18 % des Gesamtindex
Wie die Bewertung erfolgt
4.9/60Stars — 3 Stars
2.5/25Forks — 3 Forks
0/15Watcher — 1 Watcher
Verwendete Eingangsdaten
forks3
stars3
watchers1
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Wie die Bewertung erfolgt
22.5/22.5README
22.5/22.5Lizenz — anerkannte Lizenz (ISC)
0/18CONTRIBUTING-Leitfaden
0/13.5Verhaltenskodex
0/7.2Issue-Vorlage
0/6.3PR-Vorlage
Verwendete Eingangsdaten
has_readmeja
has_licenseja
has_contributingnein
has_issue_templatenein
has_code_of_conductnein
has_pull_request_templatenein
Wie die Bewertung erfolgt
53.6/80Downloads pro Monat — 10.541 Downloads/Monat über npm
0/20Abhängige in der Registry — von diesem Ökosystem nicht ausgewiesen
Verwendete Eingangsdaten
packagesscreeps-client, screepsmod-client-new, screeps-client-proxy, screeps-connectivity, xxscreeps-mod-client
dependents
ecosystemsnpm
total_downloads
monthly_downloads10.541
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?

49Gefährdet · 24 % des Gesamtindex
Wie die Bewertung erfolgt
9/54Bus-Faktor — 1 Beitragende decken die Hälfte aller Commits ab
1.5/22.5Commit-Verteilung — wichtigste beitragende Person verfasste 93 % der Commits
4.1/13.5Breite der Beitragenden — 3 Beitragende
6/10OpenSSF Scorecard: Contributors — project has 2 contributing companies or organizations -- score normalized to 6
Verwendete Eingangsdaten
bus_factor1
contributors_sampled3
top_contributor_share0,932
Wie die Bewertung erfolgt
0/46.8Issue-Lösungsquote — 0 % der Issues geschlossen
36.9/38.3PR-Annahme — 222/230 entschiedene PRs gemergt
0/15OpenSSF Scorecard: Code-Review — Found 0/12 approved changesets -- score normalized to 0
Verwendete Eingangsdaten
merged_prs222
open_issues1
closed_issues0
issue_closed_ratio0
closed_unmerged_prs8
Wie die Bewertung erfolgt
10/30Organisatorische Trägerschaft — persönliches (Nutzer-)Konto
0/20Verifizierte Domain — für Nutzerkonten nicht anwendbar
10.3/25Reichweite des Inhabers — 26 Follower von bastianh
22.6/25Kontohistorie — 28 öffentliche Repos, Kontoalter ca. 18 Jahre
Verwendete Eingangsdaten
followers26
owner_typeUser
is_verified
owner_loginbastianh
public_repos28
account_age_days6.579
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Verifizierte Domain. Die verbleibenden Gewichte wurden renormalisiert.

Paketpflege

100Exzellent
Wie die Bewertung erfolgt
25/25Veröffentlicht & auflösbar — 5 Paket(e) auf npm
35/35Veröffentlichungsaktualität — letzte Veröffentlichung vor 5 Tagen
20/20Versionshistorie — 35 veröffentlichte Versionen
20/20Nicht veraltet — aktiv, nicht veraltet oder zurückgezogen
Verwendete Eingangsdaten
packagesscreeps-client, screepsmod-client-new, screeps-client-proxy, screeps-connectivity, xxscreeps-mod-client
ecosystemsnpm
any_deprecatednein
min_days_since_publish5

Engineering-Qualität

Sind grundlegende Engineering- und Dokumentationspraktiken vorhanden?

72Gut · 20 % des Gesamtindex
Wie die Bewertung erfolgt
24/24CI-Workflows — 4 Workflow(s)
24/24Tests vorhanden
16/16Linter-Konfiguration — eslint.config.js
0/9.6Pre-Commit-Hooks
0/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 15 out of 15 merged PRs checked by a CI test -- score normalized to 10
Verwendete Eingangsdaten
has_cija
has_testsja
has_editorconfignein
has_linter_configja
has_precommit_confignein
Wie die Bewertung erfolgt
30/30README
25/25Dokumentationsverzeichnis
0/15Dokumentations-/Homepage-Site
0/10Repository-Beschreibung
0/10Topics
0/10Wiki
Verwendete Eingangsdaten
topics
has_wikinein
homepage
has_readmeja
has_docs_dirja
has_descriptionnein

Sicherheit

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

53Mittel · 16 % des Gesamtindex

Sicherheitslage

41Gefährdet
Wie die Bewertung erfolgt
7.5/7.5Binary-Artifacts — no binaries found in the repo
2.2/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 15 out of 15 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 0/12 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
7.5/7.5Dependency-Update-Tool — update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Lizenz — license file detected
0/7.5Maintained — project was created within the last 90 days. Please review its contents carefully
0/5Packaging — keine Daten
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
4/5SAST — SAST tool is not run on all commits -- score normalized to 8
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 — 23 existing vulnerabilities detected
Verwendete Eingangsdaten
sourceopenssf_scorecard
checks_evaluated16
scorecard_versionv5.5.0
checks_inconclusive2
scorecard_aggregate4,1
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): packaging, signed_releases. Die verbleibenden Gewichte wurden renormalisiert.
Wie die Bewertung erfolgt
35/35Direkte Abhängigkeiten ohne bekannte Advisories — keine direkte Abhängigkeit trägt ein bekanntes Advisory
0/25Indirekte Abhängigkeiten ohne bekannte Advisories — transitive Menge in diesem Bereich nicht von Entwicklungs- und Test-Abhängigkeiten trennbar
0/40Keine offenen Advisories — kein Advisory trägt ein Veröffentlichungsdatum
Verwendete Eingangsdaten
sourceosv
advisories24
affected_packages21
assessed_packages1.127
unassessed_packages43
affected_by_severityhigh 3, moderate 1, low 1, unknown 16
direct_affected_packages0
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): Indirekte Abhängigkeiten ohne bekannte Advisories, Keine offenen Advisories. Die verbleibenden Gewichte wurden renormalisiert. 1127 aufgelöste Abhängigkeiten wurden mit OSV abgeglichen. 43 konnten nicht bewertet werden — keine aufgelöste Version, ein nicht unterstütztes Ökosystem oder außerhalb der ausgewiesenen Paketliste. Dieses Repository veröffentlicht kein Paket, das der Index auflöst; bewertet wurde daher der Abhängigkeitsgraph des Repositorys. Dieser Graph vermischt Entwicklungs- und Test-Pins mit ausgelieferten Abhängigkeiten, daher werden nur die deklarierten Laufzeit-Abhängigkeiten bewertet; transitive Befunde werden als Kontext ausgewiesen und fließen nicht in die Bewertung ein. Erreichbarkeit wird nicht analysiert.

AI Readiness

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

74Gut · 0 % des Gesamtindex
Wie die Bewertung erfolgt
45/45Agentenanweisungen — AGENTS.md, CLAUDE.md
0/15Maschinenlesbare Doku (llms.txt)
40/40Lesbare Commit-Historie — 88 von 91 menschlichen Commits benennen ihre Absicht (strukturierter Betreff oder erläuternder Text)
Verwendete Eingangsdaten
has_llms_txtnein
legible_history_share0,967
agent_instruction_filesAGENTS.md, CLAUDE.md
agent_instruction_max_bytes2.657
Wie die Bewertung erfolgt
12.6/18Bootstrap mit einem Befehl — screeps-desktop/src-tauri/Cargo.toml (Toolchain-Konvention, kein Task-Runner)
22/22Automatisierte Tests
11/11Lint-/Format-Konfiguration — eslint.config.js
11/11Statische Typprüfung — screeps-client/tsconfig.json, screeps-connectivity/tsconfig.json
10/10Reproduzierbare Umgebung — lockfile
10/10Belegte Agentenpraxis — 5 der letzten 100 Commits von Agenten verfasst oder ihnen zugeschrieben
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
lockfilesCargo.lock, pnpm-lock.yaml
has_dockerfilenein
typed_languageja
bootstrap_files
has_devcontainernein
has_linter_configja
typecheck_configsscreeps-client/tsconfig.json, screeps-connectivity/tsconfig.json
agent_commit_share0,05
toolchain_manifestsscreeps-desktop/src-tauri/Cargo.toml
dependency_bot_commit_share0
Wie die Bewertung erfolgt
45/45Typprüfbarer Code — TypeScript (statisch typisiert)
54.8/55Handhabbare Dateigrößen — 1/253 Quelldateien über 60 KB
Verwendete Eingangsdaten
primary_languageTypeScript
largest_source_bytes79.415
source_files_sampled253
oversized_source_files1
Wie die Bewertung erfolgt
0/40API-Schema (OpenAPI/GraphQL/proto)
20/20MCP-Server
0/40Lauffähige Beispiele
Verwendete Eingangsdaten
example_dirs
has_mcp_signalja
api_schema_files

Eckdaten

3GitHub-Sterne
3Mitwirkende
440Commits, letzte 12 Monate
5Tage seit letztem Push
100Releases
1Bus-Faktor
1offene 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 ★ / 3 ⇿
0Sterne
3Forks
80Releases

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.

12233312026-052026-062026-07
Major 0Minor 0Patch 0
OpenSSF Scorecard 4.1 / 10
4.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-07-25 12:10 UTC

10Binary-Artifactsno binaries found in the repo
3Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests15 out of 15 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 0/12 approved changesets -- score normalized to 0
6Contributorsproject has 2 contributing companies or organizations -- score normalized to 6
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
0Maintainedproject was created within the last 90 days. Please review its contents carefully
k. A.Packagingpackaging workflow not detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
8SASTSAST tool is not run on all commits -- score normalized to 8
0Security-Policysecurity policy file not detected
k. A.Signed-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
0Vulnerabilities23 existing vulnerabilities detected
Direkte Abhängigkeiten 6
RegistryPaketVersionsvorgabeManifest
npmargparse^2.0.1screeps-client-proxy/package.json
npmexpress^4.21.2screeps-client-proxy/package.json
npmhttp-proxy^1.18.1screeps-client-proxy/package.json
npmscreeps-clientworkspace:^screeps-client-proxy/package.json
npmscreeps-clientworkspace:^screeps-mod-client/package.json
npmscreeps-clientworkspace:^xxscreeps-mod-client/package.json
Alle Abhängigkeiten 1.170

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

RegistryPaketVersionBeziehung
npmargparse1.0.10direkt
npmargparse2.0.1direkt
npmargparse^2.0.1direkt
npmexpress4.22.2direkt
npmexpress^4.21.2direkt
npmhttp-proxy1.18.1direkt
npmhttp-proxy^1.18.1direkt
crates.ioadler22.0.1indirekt
crates.ioaho-corasick1.1.4indirekt
crates.ioalloc-no-stdlib2.0.4indirekt
crates.ioalloc-stdlib0.2.4indirekt
crates.ioandroid_system_properties0.1.5indirekt
crates.ioanyhow1.0.103indirekt
crates.ioasync-broadcast0.7.2indirekt
crates.ioasync-channel2.5.0indirekt
crates.ioasync-executor1.14.0indirekt
crates.ioasync-io2.6.0indirekt
crates.ioasync-lock3.4.2indirekt
crates.ioasync-process2.5.0indirekt
crates.ioasync-recursion1.1.1indirekt
crates.ioasync-signal0.2.14indirekt
crates.ioasync-task4.7.1indirekt
crates.ioasync-trait0.1.89indirekt
crates.ioatk0.18.2indirekt
crates.ioatk-sys0.18.2indirekt
crates.ioatomic-waker1.1.2indirekt
crates.ioautocfg1.5.1indirekt
crates.iobase640.21.7indirekt
crates.iobase640.22.1indirekt
crates.iobit-set0.8.0indirekt
crates.iobit-vec0.8.0indirekt
crates.iobitflags1.3.2indirekt
crates.iobitflags2.13.0indirekt
crates.ioblock-buffer0.10.4indirekt
crates.ioblock20.6.2indirekt
crates.ioblocking1.6.2indirekt
crates.iobrotli8.0.4indirekt
crates.iobrotli-decompressor5.0.3indirekt
crates.iobs580.5.1indirekt
crates.iobumpalo3.20.3indirekt
crates.iobytemuck1.25.0indirekt
crates.iobyteorder1.5.0indirekt
crates.iobytes1.12.0indirekt
crates.iocairo-rs0.18.5indirekt
crates.iocairo-sys-rs0.18.2indirekt
crates.iocamino1.2.4indirekt
crates.iocargo-platform0.1.9indirekt
crates.iocargo_metadata0.19.2indirekt
crates.iocargo_toml0.22.3indirekt
crates.iocc1.2.65indirekt
crates.iocesu81.1.0indirekt
crates.iocfb0.7.3indirekt
crates.iocfg-expr0.15.8indirekt
crates.iocfg-if1.0.4indirekt
crates.iocfg_aliases0.2.1indirekt
crates.iochrono0.4.45indirekt
crates.iocombine4.6.7indirekt
crates.ioconcurrent-queue2.5.0indirekt
crates.iocookie0.18.1indirekt
crates.iocookie_store0.22.1indirekt
crates.iocore-foundation0.10.1indirekt
crates.iocore-foundation0.9.4indirekt
crates.iocore-foundation-sys0.8.7indirekt
crates.iocore-graphics0.25.0indirekt
crates.iocore-graphics-types0.2.0indirekt
crates.iocpufeatures0.2.17indirekt
crates.iocrc32fast1.5.0indirekt
crates.iocrossbeam-channel0.5.15indirekt
crates.iocrossbeam-utils0.8.21indirekt
crates.iocrypto-common0.1.7indirekt
crates.iocssparser0.36.0indirekt
crates.iocssparser-macros0.6.1indirekt
crates.ioctor0.8.0indirekt
crates.ioctor-proc-macro0.0.7indirekt
crates.iodarling0.23.0indirekt
crates.iodarling_core0.23.0indirekt
crates.iodarling_macro0.23.0indirekt
crates.iodata-url0.3.2indirekt
crates.iodbus0.9.11indirekt
crates.iodbus-secret-service4.1.0indirekt
crates.ioderanged0.5.8indirekt
crates.ioderive_more2.1.1indirekt
crates.ioderive_more-impl2.1.1indirekt
crates.iodigest0.10.7indirekt
crates.iodirs6.0.0indirekt
crates.iodirs-sys0.5.0indirekt
crates.iodispatch20.3.1indirekt
crates.iodisplaydoc0.2.6indirekt
crates.iodlopen20.8.2indirekt
crates.iodlopen2_derive0.4.3indirekt
crates.iodocument-features0.2.12indirekt
crates.iodom_query0.27.0indirekt
crates.iodpi0.1.2indirekt
crates.iodtoa1.0.11indirekt
crates.iodtoa-short0.3.5indirekt
crates.iodtor0.3.0indirekt
crates.iodtor-proc-macro0.0.6indirekt
crates.iodunce1.0.5indirekt
crates.iodyn-clone1.0.20indirekt
crates.ioembed-resource3.0.9indirekt
crates.ioembed_plist1.2.2indirekt
crates.ioencoding_rs0.8.35indirekt
crates.ioendi1.1.1indirekt
crates.ioenumflags20.7.12indirekt
crates.ioenumflags2_derive0.7.12indirekt
crates.ioequivalent1.0.2indirekt
crates.ioerased-serde0.4.10indirekt
crates.ioerrno0.3.14indirekt
crates.ioevent-listener5.4.1indirekt
crates.ioevent-listener-strategy0.5.4indirekt
crates.iofastrand2.4.1indirekt
crates.iofdeflate0.3.7indirekt
crates.iofield-offset0.3.6indirekt
crates.iofind-msvc-tools0.1.9indirekt
crates.ioflate21.1.9indirekt
crates.iofnv1.0.7indirekt
crates.iofoldhash0.2.0indirekt
crates.ioforeign-types0.5.0indirekt
crates.ioforeign-types-macros0.2.3indirekt
crates.ioforeign-types-shared0.3.1indirekt
crates.ioform_urlencoded1.2.2indirekt
crates.iofutures-channel0.3.32indirekt
crates.iofutures-core0.3.32indirekt
crates.iofutures-executor0.3.32indirekt
crates.iofutures-io0.3.32indirekt
crates.iofutures-lite2.6.1indirekt
crates.iofutures-macro0.3.32indirekt
crates.iofutures-sink0.3.32indirekt
crates.iofutures-task0.3.32indirekt
crates.iofutures-util0.3.32indirekt
crates.iogdk0.18.2indirekt
crates.iogdk-pixbuf0.18.5indirekt
crates.iogdk-pixbuf-sys0.18.0indirekt
crates.iogdk-sys0.18.2indirekt
crates.iogdkwayland-sys0.18.2indirekt
crates.iogdkx110.18.2indirekt
crates.iogdkx11-sys0.18.2indirekt
crates.iogeneric-array0.14.7indirekt
crates.iogetrandom0.2.17indirekt
crates.iogetrandom0.3.4indirekt
crates.iogetrandom0.4.3indirekt
crates.iogio0.18.4indirekt
crates.iogio-sys0.18.1indirekt
crates.ioglib0.18.5indirekt
crates.ioglib-macros0.18.5indirekt
crates.ioglib-sys0.18.1indirekt
crates.ioglob0.3.3indirekt
crates.iogobject-sys0.18.0indirekt
crates.iogtk0.18.2indirekt
crates.iogtk-sys0.18.2indirekt
crates.iogtk3-macros0.18.2indirekt
crates.ioh20.4.15indirekt
crates.iohashbrown0.12.3indirekt
crates.iohashbrown0.17.1indirekt
crates.ioheck0.4.1indirekt
crates.ioheck0.5.0indirekt
crates.iohermit-abi0.5.2indirekt
crates.iohex0.4.3indirekt
crates.iohtml5ever0.38.0indirekt
crates.iohttp1.4.2indirekt
crates.iohttp-body1.0.1indirekt
crates.iohttp-body-util0.1.3indirekt
crates.iohttparse1.10.1indirekt
crates.iohyper1.10.1indirekt
crates.iohyper-rustls0.27.9indirekt
crates.iohyper-util0.1.20indirekt
crates.ioiana-time-zone0.1.65indirekt
crates.ioiana-time-zone-haiku0.1.2indirekt
crates.ioico0.5.0indirekt
crates.ioicu_collections2.2.0indirekt
crates.ioicu_locale_core2.2.0indirekt
crates.ioicu_normalizer2.2.0indirekt
crates.ioicu_normalizer_data2.2.0indirekt
crates.ioicu_properties2.2.0indirekt
crates.ioicu_properties_data2.2.0indirekt
crates.ioicu_provider2.2.0indirekt
crates.ioident_case1.0.1indirekt
crates.ioidna1.1.0indirekt
crates.ioidna_adapter1.2.2indirekt
crates.ioindexmap1.9.3indirekt
crates.ioindexmap2.14.0indirekt
crates.ioinfer0.19.0indirekt
crates.ioipnet2.12.0indirekt
crates.iois-docker0.2.0indirekt
crates.iois-wsl0.4.0indirekt
crates.ioitoa1.0.18indirekt
crates.iojavascriptcore-rs1.1.2indirekt
crates.iojavascriptcore-rs-sys1.1.1indirekt
crates.iojni0.21.1indirekt
crates.iojni-sys0.3.1indirekt
crates.iojni-sys0.4.1indirekt
crates.iojni-sys-macros0.4.1indirekt
crates.iojs-sys0.3.103indirekt
crates.iojson-patch3.0.1indirekt
crates.iojsonptr0.6.3indirekt
crates.iokeyboard-types0.7.0indirekt
crates.iokeyring3.6.3indirekt
crates.iolibappindicator0.9.0indirekt
crates.iolibappindicator-sys0.9.0indirekt
crates.iolibc0.2.186indirekt
crates.iolibdbus-sys0.2.7indirekt
crates.iolibloading0.7.4indirekt
crates.iolibredox0.1.17indirekt
crates.iolinux-raw-sys0.12.1indirekt
crates.iolitemap0.8.2indirekt
crates.iolitrs1.0.0indirekt
crates.iolock_api0.4.14indirekt
crates.iolog0.4.33indirekt
crates.iolru-slab0.1.2indirekt
crates.iomarkup5ever0.38.0indirekt
crates.iomemchr2.8.2indirekt
crates.iomemoffset0.9.1indirekt
crates.iomime0.3.17indirekt
crates.iominiz_oxide0.8.9indirekt
crates.iomio1.2.1indirekt
crates.iomuda0.19.3indirekt
crates.iondk0.9.0indirekt
crates.iondk-sys0.6.0+11769913indirekt
crates.ionew_debug_unreachable1.0.6indirekt
crates.ionum-conv0.2.2indirekt
crates.ionum-traits0.2.19indirekt
crates.ionum_enum0.7.6indirekt
crates.ionum_enum_derive0.7.6indirekt
crates.ioobjc20.6.4indirekt
crates.ioobjc2-app-kit0.3.2indirekt
crates.ioobjc2-cloud-kit0.3.2indirekt
crates.ioobjc2-core-data0.3.2indirekt
crates.ioobjc2-core-foundation0.3.2indirekt
crates.ioobjc2-core-graphics0.3.2indirekt
crates.ioobjc2-core-image0.3.2indirekt
crates.ioobjc2-core-location0.3.2indirekt
crates.ioobjc2-core-text0.3.2indirekt
crates.ioobjc2-encode4.1.0indirekt
crates.ioobjc2-exception-helper0.1.1indirekt
crates.ioobjc2-foundation0.3.2indirekt
crates.ioobjc2-io-surface0.3.2indirekt
crates.ioobjc2-quartz-core0.3.2indirekt
crates.ioobjc2-ui-kit0.3.2indirekt
crates.ioobjc2-user-notifications0.3.2indirekt
crates.ioobjc2-web-kit0.3.2indirekt
crates.ioonce_cell1.21.4indirekt
crates.ioopen5.3.6indirekt
crates.iooption-ext0.2.0indirekt
crates.ioordered-stream0.2.0indirekt
crates.iopango0.18.3indirekt
crates.iopango-sys0.18.0indirekt
crates.ioparking2.2.1indirekt
crates.ioparking_lot0.12.5indirekt
crates.ioparking_lot_core0.9.12indirekt
crates.iopercent-encoding2.3.2indirekt
crates.iophf0.13.1indirekt
crates.iophf_codegen0.13.1indirekt
crates.iophf_generator0.13.1indirekt
crates.iophf_macros0.13.1indirekt
crates.iophf_shared0.13.1indirekt
crates.iopin-project-lite0.2.17indirekt
crates.iopiper0.2.5indirekt
crates.iopkg-config0.3.33indirekt
crates.ioplist1.9.0indirekt
crates.iopng0.17.16indirekt
crates.iopng0.18.1indirekt
crates.iopolling3.11.0indirekt
crates.iopotential_utf0.1.5indirekt
crates.iopowerfmt0.2.0indirekt
crates.ioppv-lite860.2.21indirekt
crates.ioprecomputed-hash0.1.1indirekt
crates.ioproc-macro-crate1.3.1indirekt
crates.ioproc-macro-crate2.0.2indirekt
crates.ioproc-macro-crate3.5.0indirekt
crates.ioproc-macro-error1.0.4indirekt
crates.ioproc-macro-error-attr1.0.4indirekt
crates.ioproc-macro21.0.106indirekt
crates.iopsl-types2.0.11indirekt
crates.iopublicsuffix2.3.0indirekt
crates.ioquick-xml0.39.4indirekt
crates.ioquinn0.11.11indirekt
crates.ioquinn-proto0.11.15indirekt
crates.ioquinn-udp0.5.14indirekt
crates.ioquote1.0.46indirekt
crates.ior-efi5.3.0indirekt
crates.ior-efi6.0.0indirekt
crates.iorand0.9.4indirekt
crates.iorand_chacha0.9.0indirekt
crates.iorand_core0.9.5indirekt
crates.ioraw-window-handle0.6.2indirekt
crates.ioredox_syscall0.5.18indirekt
crates.ioredox_users0.5.2indirekt
crates.ioref-cast1.0.25indirekt
crates.ioref-cast-impl1.0.25indirekt
crates.ioregex1.12.4indirekt
crates.ioregex-automata0.4.14indirekt
crates.ioregex-syntax0.8.11indirekt
crates.ioreqwest0.12.28indirekt
crates.ioreqwest0.13.4indirekt
crates.ioring0.17.14indirekt
crates.iorustc-hash2.1.2indirekt
crates.iorustc_version0.4.1indirekt
crates.iorustix1.1.4indirekt
crates.iorustls0.23.41indirekt
crates.iorustls-pki-types1.14.1indirekt
crates.iorustls-webpki0.103.13indirekt
crates.iorustversion1.0.22indirekt
crates.ioryu1.0.23indirekt
crates.iosame-file1.0.6indirekt
crates.ioschemars0.8.22indirekt
crates.ioschemars0.9.0indirekt
crates.ioschemars1.2.1indirekt
crates.ioschemars_derive0.8.22indirekt
crates.ioscopeguard1.2.0indirekt
crates.iosecurity-framework2.11.1indirekt
crates.iosecurity-framework3.7.0indirekt
crates.iosecurity-framework-sys2.17.0indirekt
crates.ioselectors0.36.1indirekt
crates.iosemver1.0.28indirekt
crates.ioserde1.0.228indirekt
crates.ioserde-untagged0.1.9indirekt
crates.ioserde_core1.0.228indirekt
crates.ioserde_derive1.0.228indirekt
crates.ioserde_derive_internals0.29.1indirekt
crates.ioserde_json1.0.150indirekt
crates.ioserde_repr0.1.20indirekt
crates.ioserde_spanned0.6.9indirekt
crates.ioserde_spanned1.1.1indirekt
crates.ioserde_urlencoded0.7.1indirekt
crates.ioserde_with3.21.0indirekt
crates.ioserde_with_macros3.21.0indirekt
crates.ioserialize-to-javascript0.1.2indirekt
crates.ioserialize-to-javascript-impl0.1.2indirekt
crates.ioservo_arc0.4.3indirekt
crates.iosha20.10.9indirekt
crates.ioshlex2.0.1indirekt
crates.iosignal-hook-registry1.4.8indirekt
crates.iosimd-adler320.3.9indirekt
crates.iosiphasher1.0.3indirekt
crates.ioslab0.4.12indirekt
crates.iosmallvec1.15.2indirekt
crates.iosocket20.6.4indirekt
crates.iosoftbuffer0.4.8indirekt
crates.iosoup30.5.0indirekt
crates.iosoup3-sys0.5.0indirekt
crates.iostable_deref_trait1.2.1indirekt
crates.iostring_cache0.9.0indirekt
crates.iostring_cache_codegen0.6.1indirekt
crates.iostrsim0.11.1indirekt
crates.iosubtle2.6.1indirekt
crates.ioswift-rs1.0.7indirekt
crates.iosyn1.0.109indirekt
crates.iosyn2.0.118indirekt
crates.iosync_wrapper1.0.2indirekt
crates.iosynstructure0.13.2indirekt
crates.iosystem-configuration0.7.0indirekt
crates.iosystem-configuration-sys0.6.0indirekt
crates.iosystem-deps6.2.2indirekt
crates.iotao0.35.3indirekt
crates.iotao-macros0.1.3indirekt
crates.iotarget-lexicon0.12.16indirekt
crates.iotauri2.11.3indirekt
crates.iotauri-build2.6.3indirekt
crates.iotauri-codegen2.6.3indirekt
crates.iotauri-macros2.6.3indirekt
crates.iotauri-plugin2.6.3indirekt
crates.iotauri-plugin-fs2.5.1indirekt
crates.iotauri-plugin-http2.5.9indirekt
crates.iotauri-plugin-opener2.5.4indirekt
crates.iotauri-runtime2.11.3indirekt
crates.iotauri-runtime-wry2.11.3indirekt
crates.iotauri-utils2.9.3indirekt
crates.iotauri-winres0.3.6indirekt
crates.iotempfile3.27.0indirekt
crates.iotendril0.5.0indirekt
crates.iothiserror1.0.69indirekt
crates.iothiserror2.0.18indirekt
crates.iothiserror-impl1.0.69indirekt
crates.iothiserror-impl2.0.18indirekt
crates.iotime0.3.51indirekt
crates.iotime-core0.1.9indirekt
crates.iotime-macros0.2.30indirekt
crates.iotinystr0.8.3indirekt
crates.iotinyvec1.11.0indirekt
crates.iotinyvec_macros0.1.1indirekt
crates.iotokio1.52.3indirekt
crates.iotokio-macros2.7.0indirekt
crates.iotokio-rustls0.26.4indirekt
crates.iotokio-util0.7.18indirekt
crates.iotoml0.8.2indirekt
crates.iotoml0.9.12+spec-1.1.0indirekt
crates.iotoml1.1.2+spec-1.1.0indirekt
crates.iotoml_datetime0.6.3indirekt
crates.iotoml_datetime0.7.5+spec-1.1.0indirekt
crates.iotoml_datetime1.1.1+spec-1.1.0indirekt
crates.iotoml_edit0.19.15indirekt
crates.iotoml_edit0.20.2indirekt
crates.iotoml_edit0.25.12+spec-1.1.0indirekt
crates.iotoml_parser1.1.2+spec-1.1.0indirekt
crates.iotoml_writer1.1.1+spec-1.1.0indirekt
crates.iotower0.5.3indirekt
crates.iotower-http0.6.11indirekt
crates.iotower-layer0.3.3indirekt
crates.iotower-service0.3.3indirekt
crates.iotracing0.1.44indirekt
crates.iotracing-attributes0.1.31indirekt
crates.iotracing-core0.1.36indirekt
crates.iotray-icon0.24.1indirekt
crates.iotry-lock0.2.5indirekt
crates.iotypeid1.0.3indirekt
crates.iotypenum1.20.1indirekt
crates.iouds_windows1.2.1indirekt
crates.iounic-char-property0.9.0indirekt
crates.iounic-char-range0.9.0indirekt
crates.iounic-common0.9.0indirekt
crates.iounic-ucd-ident0.9.0indirekt
crates.iounic-ucd-version0.9.0indirekt
crates.iounicode-ident1.0.24indirekt
crates.iounicode-segmentation1.13.3indirekt
crates.iountrusted0.9.0indirekt
crates.iourl2.5.8indirekt
crates.iourlpattern0.3.0indirekt
crates.ioutf-80.7.6indirekt
crates.ioutf8_iter1.0.4indirekt
crates.iouuid1.23.4indirekt
crates.ioversion-compare0.2.1indirekt
crates.ioversion_check0.9.5indirekt
crates.iovswhom0.1.0indirekt
crates.iovswhom-sys0.1.3indirekt
crates.iowalkdir2.5.0indirekt
crates.iowant0.3.1indirekt
crates.iowasi0.11.1+wasi-snapshot-preview1indirekt
crates.iowasip21.0.4+wasi-0.2.12indirekt
crates.iowasm-bindgen0.2.126indirekt
crates.iowasm-bindgen-futures0.4.76indirekt
crates.iowasm-bindgen-macro0.2.126indirekt
crates.iowasm-bindgen-macro-support0.2.126indirekt
crates.iowasm-bindgen-shared0.2.126indirekt
crates.iowasm-streams0.5.0indirekt
crates.ioweb-sys0.3.103indirekt
crates.ioweb-time1.1.0indirekt
crates.ioweb_atoms0.2.5indirekt
crates.iowebkit2gtk2.0.2indirekt
crates.iowebkit2gtk-sys2.0.2indirekt
crates.iowebpki-roots1.0.8indirekt
crates.iowebview2-com0.38.2indirekt
crates.iowebview2-com-macros0.8.1indirekt
crates.iowebview2-com-sys0.38.2indirekt
crates.iowinapi0.3.9indirekt
crates.iowinapi-i686-pc-windows-gnu0.4.0indirekt
crates.iowinapi-util0.1.11indirekt
crates.iowinapi-x86_64-pc-windows-gnu0.4.0indirekt
crates.iowindow-vibrancy0.6.0indirekt
crates.iowindows0.61.3indirekt
crates.iowindows-collections0.2.0indirekt
crates.iowindows-core0.61.2indirekt
crates.iowindows-core0.62.2indirekt
crates.iowindows-future0.2.1indirekt
crates.iowindows-implement0.60.2indirekt
crates.iowindows-interface0.59.3indirekt
crates.iowindows-link0.1.3indirekt
crates.iowindows-link0.2.1indirekt
crates.iowindows-numerics0.2.0indirekt
crates.iowindows-registry0.6.1indirekt
crates.iowindows-result0.3.4indirekt
crates.iowindows-result0.4.1indirekt
crates.iowindows-strings0.4.2indirekt
crates.iowindows-strings0.5.1indirekt
crates.iowindows-sys0.45.0indirekt
crates.iowindows-sys0.52.0indirekt
crates.iowindows-sys0.59.0indirekt
crates.iowindows-sys0.60.2indirekt
crates.iowindows-sys0.61.2indirekt
crates.iowindows-targets0.42.2indirekt
crates.iowindows-targets0.52.6indirekt
crates.iowindows-targets0.53.5indirekt
crates.iowindows-threading0.1.0indirekt
crates.iowindows-version0.1.7indirekt
crates.iowindows_aarch64_gnullvm0.42.2indirekt
crates.iowindows_aarch64_gnullvm0.52.6indirekt
crates.iowindows_aarch64_gnullvm0.53.1indirekt
crates.iowindows_aarch64_msvc0.42.2indirekt
crates.iowindows_aarch64_msvc0.52.6indirekt
crates.iowindows_aarch64_msvc0.53.1indirekt
crates.iowindows_i686_gnu0.42.2indirekt
crates.iowindows_i686_gnu0.52.6indirekt
crates.iowindows_i686_gnu0.53.1indirekt
crates.iowindows_i686_gnullvm0.52.6indirekt
crates.iowindows_i686_gnullvm0.53.1indirekt
crates.iowindows_i686_msvc0.42.2indirekt
crates.iowindows_i686_msvc0.52.6indirekt
crates.iowindows_i686_msvc0.53.1indirekt
crates.iowindows_x86_64_gnu0.42.2indirekt
crates.iowindows_x86_64_gnu0.52.6indirekt
crates.iowindows_x86_64_gnu0.53.1indirekt
crates.iowindows_x86_64_gnullvm0.42.2indirekt
crates.iowindows_x86_64_gnullvm0.52.6indirekt
crates.iowindows_x86_64_gnullvm0.53.1indirekt
crates.iowindows_x86_64_msvc0.42.2indirekt
crates.iowindows_x86_64_msvc0.52.6indirekt
crates.iowindows_x86_64_msvc0.53.1indirekt
crates.iowinnow0.5.40indirekt
crates.iowinnow0.7.15indirekt
crates.iowinnow1.0.3indirekt
crates.iowinreg0.55.0indirekt
crates.iowit-bindgen0.57.1indirekt
crates.iowriteable0.6.3indirekt
crates.iowry0.55.1indirekt
crates.iox112.21.0indirekt
crates.iox11-dl2.21.0indirekt
crates.ioyoke0.8.3indirekt
crates.ioyoke-derive0.8.2indirekt
crates.iozbus5.16.0indirekt
crates.iozbus_macros5.16.0indirekt
crates.iozbus_names4.3.2indirekt
crates.iozerocopy0.8.52indirekt
crates.iozerocopy-derive0.8.52indirekt
crates.iozerofrom0.1.8indirekt
crates.iozerofrom-derive0.1.7indirekt
crates.iozeroize1.9.0indirekt
crates.iozeroize_derive1.5.0indirekt
crates.iozerotrie0.2.4indirekt
crates.iozerovec0.11.6indirekt
crates.iozerovec-derive0.11.3indirekt
crates.iozmij1.0.21indirekt
crates.iozvariant5.12.0indirekt
crates.iozvariant_derive5.12.0indirekt
crates.iozvariant_utils3.4.0indirekt
npm@asamuzakjp/css-color5.1.11indirekt
npm@asamuzakjp/dom-selector7.1.1indirekt
npm@asamuzakjp/generational-cache1.0.1indirekt
npm@asamuzakjp/nwsapi2.3.9indirekt
npm@babel/code-frame7.29.0indirekt
npm@babel/compat-data7.29.3indirekt
npm@babel/core7.29.0indirekt
npm@babel/generator7.29.1indirekt
npm@babel/helper-compilation-targets7.28.6indirekt
npm@babel/helper-globals7.28.0indirekt
npm@babel/helper-module-imports7.18.6indirekt
npm@babel/helper-module-imports7.28.6indirekt
npm@babel/helper-module-transforms7.28.6indirekt
npm@babel/helper-plugin-utils7.28.6indirekt
npm@babel/helper-string-parser7.27.1indirekt
npm@babel/helper-validator-identifier7.28.5indirekt
npm@babel/helper-validator-option7.27.1indirekt
npm@babel/helpers7.29.2indirekt
npm@babel/parser7.29.3indirekt
npm@babel/plugin-syntax-jsx7.28.6indirekt
npm@babel/plugin-syntax-typescript7.28.6indirekt
npm@babel/runtime7.29.2indirekt
npm@babel/template7.28.6indirekt
npm@babel/traverse7.29.0indirekt
npm@babel/types7.29.0indirekt
npm@bramus/specificity2.4.2indirekt
npm@changesets/apply-release-plan7.1.1indirekt
npm@changesets/assemble-release-plan6.0.10indirekt
npm@changesets/changelog-git0.2.1indirekt
npm@changesets/cli2.31.0indirekt
npm@changesets/config3.1.4indirekt
npm@changesets/errors0.2.0indirekt
npm@changesets/get-dependents-graph2.1.4indirekt
npm@changesets/get-release-plan4.0.16indirekt
npm@changesets/get-version-range-type0.4.0indirekt
npm@changesets/git3.0.4indirekt
npm@changesets/logger0.1.1indirekt
npm@changesets/parse0.4.3indirekt
npm@changesets/pre2.0.2indirekt
npm@changesets/read0.6.7indirekt
npm@changesets/should-skip-package0.1.2indirekt
npm@changesets/types4.1.0indirekt
npm@changesets/types6.1.0indirekt
npm@changesets/write0.4.0indirekt
npm@codemirror/autocomplete6.20.2indirekt
npm@codemirror/autocomplete^6.20.2indirekt
npm@codemirror/commands6.10.3indirekt
npm@codemirror/lang-javascript6.2.5indirekt
npm@codemirror/lang-javascript^6.2.5indirekt
npm@codemirror/lang-json6.0.2indirekt
npm@codemirror/lang-json^6.0.2indirekt
npm@codemirror/language6.12.3indirekt
npm@codemirror/lint6.9.6indirekt
npm@codemirror/lint^6.9.6indirekt
npm@codemirror/search6.7.0indirekt
npm@codemirror/state6.6.0indirekt
npm@codemirror/state^6.6.0indirekt
npm@codemirror/theme-one-dark6.1.3indirekt
npm@codemirror/theme-one-dark^6.1.3indirekt
npm@codemirror/view6.43.0indirekt
npm@codemirror/view^6.43.0indirekt
npm@csstools/color-helpers6.0.2indirekt
npm@csstools/css-calc3.2.1indirekt
npm@csstools/css-color-parser4.1.1indirekt
npm@csstools/css-parser-algorithms4.0.0indirekt
npm@csstools/css-syntax-patches-for-csstree1.1.4indirekt
npm@csstools/css-tokenizer4.0.0indirekt
npm@emnapi/core1.11.1indirekt
npm@emnapi/runtime1.11.1indirekt
npm@emnapi/wasi-threads1.2.2indirekt
npm@esbuild/aix-ppc640.28.1indirekt
npm@esbuild/android-arm0.28.1indirekt
npm@esbuild/android-arm640.28.1indirekt
npm@esbuild/android-x640.28.1indirekt
npm@esbuild/darwin-arm640.28.1indirekt
npm@esbuild/darwin-x640.28.1indirekt
npm@esbuild/freebsd-arm640.28.1indirekt
npm@esbuild/freebsd-x640.28.1indirekt
npm@esbuild/linux-arm0.28.1indirekt
npm@esbuild/linux-arm640.28.1indirekt
npm@esbuild/linux-ia320.28.1indirekt
npm@esbuild/linux-loong640.28.1indirekt
npm@esbuild/linux-mips64el0.28.1indirekt
npm@esbuild/linux-ppc640.28.1indirekt
npm@esbuild/linux-riscv640.28.1indirekt
npm@esbuild/linux-s390x0.28.1indirekt
npm@esbuild/linux-x640.28.1indirekt
npm@esbuild/netbsd-arm640.28.1indirekt
npm@esbuild/netbsd-x640.28.1indirekt
npm@esbuild/openbsd-arm640.28.1indirekt
npm@esbuild/openbsd-x640.28.1indirekt
npm@esbuild/openharmony-arm640.28.1indirekt
npm@esbuild/sunos-x640.28.1indirekt
npm@esbuild/win32-arm640.28.1indirekt
npm@esbuild/win32-ia320.28.1indirekt
npm@esbuild/win32-x640.28.1indirekt
npm@eslint-community/eslint-utils4.9.1indirekt
npm@eslint-community/regexpp4.12.2indirekt
npm@eslint/config-array0.23.5indirekt
npm@eslint/config-helpers0.6.0indirekt
npm@eslint/core1.2.1indirekt
npm@eslint/js10.0.1indirekt
npm@eslint/js^10.0.1indirekt
npm@eslint/object-schema3.0.5indirekt
npm@eslint/plugin-kit0.7.2indirekt
npm@exodus/bytes1.15.1indirekt
npm@humanfs/core0.19.2indirekt
npm@humanfs/node0.16.8indirekt
npm@humanfs/types0.15.0indirekt
npm@humanwhocodes/module-importer1.0.1indirekt
npm@humanwhocodes/retry0.4.3indirekt
npm@inquirer/external-editor1.0.3indirekt
npm@jridgewell/gen-mapping0.3.13indirekt
npm@jridgewell/remapping2.3.5indirekt
npm@jridgewell/resolve-uri3.1.2indirekt
npm@jridgewell/sourcemap-codec1.5.5indirekt
npm@jridgewell/trace-mapping0.3.31indirekt
npm@lezer/common1.5.2indirekt
npm@lezer/highlight1.2.3indirekt
npm@lezer/javascript1.5.4indirekt
npm@lezer/json1.0.3indirekt
npm@lezer/lr1.4.10indirekt
npm@manypkg/find-root1.1.0indirekt
npm@manypkg/get-packages1.1.3indirekt
npm@marijn/find-cluster-break1.0.2indirekt
npm@napi-rs/wasm-runtime1.1.6indirekt
npm@nodelib/fs.scandir2.1.5indirekt
npm@nodelib/fs.stat2.0.5indirekt
npm@nodelib/fs.walk1.2.8indirekt
npm@nothing-but/utils0.17.0indirekt
npm@oxc-project/types0.138.0indirekt
npm@pixi/colord2.9.6indirekt
npm@rolldown/binding-android-arm641.1.4indirekt
npm@rolldown/binding-darwin-arm641.1.4indirekt
npm@rolldown/binding-darwin-x641.1.4indirekt
npm@rolldown/binding-freebsd-x641.1.4indirekt
npm@rolldown/binding-linux-arm-gnueabihf1.1.4indirekt
npm@rolldown/binding-linux-arm64-gnu1.1.4indirekt
npm@rolldown/binding-linux-arm64-musl1.1.4indirekt
npm@rolldown/binding-linux-ppc64-gnu1.1.4indirekt
npm@rolldown/binding-linux-s390x-gnu1.1.4indirekt
npm@rolldown/binding-linux-x64-gnu1.1.4indirekt
npm@rolldown/binding-linux-x64-musl1.1.4indirekt
npm@rolldown/binding-openharmony-arm641.1.4indirekt
npm@rolldown/binding-wasm32-wasi1.1.4indirekt
npm@rolldown/binding-win32-arm64-msvc1.1.4indirekt
npm@rolldown/binding-win32-x64-msvc1.1.4indirekt
npm@rolldown/pluginutils1.0.1indirekt
npm@rollup/rollup-android-arm-eabi4.60.4indirekt
npm@rollup/rollup-android-arm-eabi4.62.0indirekt
npm@rollup/rollup-android-arm644.60.4indirekt
npm@rollup/rollup-android-arm644.62.0indirekt
npm@rollup/rollup-darwin-arm644.60.4indirekt
npm@rollup/rollup-darwin-arm644.62.0indirekt
npm@rollup/rollup-darwin-x644.60.4indirekt
npm@rollup/rollup-darwin-x644.62.0indirekt
npm@rollup/rollup-freebsd-arm644.60.4indirekt
npm@rollup/rollup-freebsd-arm644.62.0indirekt
npm@rollup/rollup-freebsd-x644.60.4indirekt
npm@rollup/rollup-freebsd-x644.62.0indirekt
npm@rollup/rollup-linux-arm-gnueabihf4.60.4indirekt
npm@rollup/rollup-linux-arm-gnueabihf4.62.0indirekt
npm@rollup/rollup-linux-arm-musleabihf4.60.4indirekt
npm@rollup/rollup-linux-arm-musleabihf4.62.0indirekt
npm@rollup/rollup-linux-arm64-gnu4.60.4indirekt
npm@rollup/rollup-linux-arm64-gnu4.62.0indirekt
npm@rollup/rollup-linux-arm64-musl4.60.4indirekt
npm@rollup/rollup-linux-arm64-musl4.62.0indirekt
npm@rollup/rollup-linux-loong64-gnu4.60.4indirekt
npm@rollup/rollup-linux-loong64-gnu4.62.0indirekt
npm@rollup/rollup-linux-loong64-musl4.60.4indirekt
npm@rollup/rollup-linux-loong64-musl4.62.0indirekt
npm@rollup/rollup-linux-ppc64-gnu4.60.4indirekt
npm@rollup/rollup-linux-ppc64-gnu4.62.0indirekt
npm@rollup/rollup-linux-ppc64-musl4.60.4indirekt
npm@rollup/rollup-linux-ppc64-musl4.62.0indirekt
npm@rollup/rollup-linux-riscv64-gnu4.60.4indirekt
npm@rollup/rollup-linux-riscv64-gnu4.62.0indirekt
npm@rollup/rollup-linux-riscv64-musl4.60.4indirekt
npm@rollup/rollup-linux-riscv64-musl4.62.0indirekt
npm@rollup/rollup-linux-s390x-gnu4.60.4indirekt
npm@rollup/rollup-linux-s390x-gnu4.62.0indirekt
npm@rollup/rollup-linux-x64-gnu4.60.4indirekt
npm@rollup/rollup-linux-x64-gnu4.62.0indirekt
npm@rollup/rollup-linux-x64-musl4.60.4indirekt
npm@rollup/rollup-linux-x64-musl4.62.0indirekt
npm@rollup/rollup-openbsd-x644.60.4indirekt
npm@rollup/rollup-openbsd-x644.62.0indirekt
npm@rollup/rollup-openharmony-arm644.60.4indirekt
npm@rollup/rollup-openharmony-arm644.62.0indirekt
npm@rollup/rollup-win32-arm64-msvc4.60.4indirekt
npm@rollup/rollup-win32-arm64-msvc4.62.0indirekt
npm@rollup/rollup-win32-ia32-msvc4.60.4indirekt
npm@rollup/rollup-win32-ia32-msvc4.62.0indirekt
npm@rollup/rollup-win32-x64-gnu4.60.4indirekt
npm@rollup/rollup-win32-x64-gnu4.62.0indirekt
npm@rollup/rollup-win32-x64-msvc4.60.4indirekt
npm@rollup/rollup-win32-x64-msvc4.62.0indirekt
npm@solid-devtools/debugger0.28.1indirekt
npm@solid-devtools/debugger^0.28.1indirekt
npm@solid-devtools/shared0.20.0indirekt
npm@solid-primitives/bounds0.1.5indirekt
npm@solid-primitives/event-listener2.4.5indirekt
npm@solid-primitives/keyboard1.3.5indirekt
npm@solid-primitives/media2.3.5indirekt
npm@solid-primitives/refs1.1.3indirekt
npm@solid-primitives/resize-observer2.1.5indirekt
npm@solid-primitives/rootless1.5.3indirekt
npm@solid-primitives/scheduled1.5.3indirekt
npm@solid-primitives/static-store0.1.3indirekt
npm@solid-primitives/styles0.1.3indirekt
npm@solid-primitives/utils6.4.0indirekt
npm@standard-schema/spec1.1.0indirekt
npm@tauri-apps/api2.11.1indirekt
npm@tauri-apps/api^2indirekt
npm@tauri-apps/cli2.11.4indirekt
npm@tauri-apps/cli^2.11.4indirekt
npm@tauri-apps/cli-darwin-arm642.11.4indirekt
npm@tauri-apps/cli-darwin-x642.11.4indirekt
npm@tauri-apps/cli-linux-arm-gnueabihf2.11.4indirekt
npm@tauri-apps/cli-linux-arm64-gnu2.11.4indirekt
npm@tauri-apps/cli-linux-arm64-musl2.11.4indirekt
npm@tauri-apps/cli-linux-riscv64-gnu2.11.4indirekt
npm@tauri-apps/cli-linux-x64-gnu2.11.4indirekt
npm@tauri-apps/cli-linux-x64-musl2.11.4indirekt
npm@tauri-apps/cli-win32-arm64-msvc2.11.4indirekt
npm@tauri-apps/cli-win32-ia32-msvc2.11.4indirekt
npm@tauri-apps/cli-win32-x64-msvc2.11.4indirekt
npm@tauri-apps/plugin-http2.5.9indirekt
npm@tauri-apps/plugin-http^2indirekt
npm@tauri-apps/plugin-opener2.5.4indirekt
npm@tauri-apps/plugin-opener^2indirekt
npm@tybys/wasm-util0.10.3indirekt
npm@types/babel__core7.20.5indirekt
npm@types/babel__generator7.27.0indirekt
npm@types/babel__template7.4.4indirekt
npm@types/babel__traverse7.28.0indirekt
npm@types/chai5.2.3indirekt
npm@types/deep-eql4.0.2indirekt
npm@types/earcut3.0.0indirekt
npm@types/esrecurse4.3.1indirekt
npm@types/estree1.0.8indirekt
npm@types/estree1.0.9indirekt
npm@types/json-schema7.0.15indirekt
npm@types/node12.20.55indirekt
npm@types/node26.1.0indirekt
npm@types/node^26.1.0indirekt
npm@types/screeps3.4.0indirekt
npm@types/screeps^3.4.0indirekt
npm@typescript-eslint/eslint-plugin8.63.0indirekt
npm@typescript-eslint/eslint-plugin^8.63.0indirekt
npm@typescript-eslint/parser8.63.0indirekt
npm@typescript-eslint/parser^8.63.0indirekt
npm@typescript-eslint/project-service8.59.4indirekt
npm@typescript-eslint/project-service8.63.0indirekt
npm@typescript-eslint/scope-manager8.59.4indirekt
npm@typescript-eslint/scope-manager8.63.0indirekt
npm@typescript-eslint/tsconfig-utils8.59.4indirekt
npm@typescript-eslint/tsconfig-utils8.63.0indirekt
npm@typescript-eslint/type-utils8.63.0indirekt
npm@typescript-eslint/types8.59.4indirekt
npm@typescript-eslint/types8.63.0indirekt
npm@typescript-eslint/typescript-estree8.59.4indirekt
npm@typescript-eslint/typescript-estree8.63.0indirekt
npm@typescript-eslint/utils8.59.4indirekt
npm@typescript-eslint/utils8.63.0indirekt
npm@typescript-eslint/visitor-keys8.59.4indirekt
npm@typescript-eslint/visitor-keys8.63.0indirekt
npm@typescript/vfs1.6.4indirekt
npm@typescript/vfs^1.6.4indirekt
npm@valtown/codemirror-ts2.3.1indirekt
npm@valtown/codemirror-ts^2.3.1indirekt
npm@vitest/expect4.1.10indirekt
npm@vitest/mocker4.1.10indirekt
npm@vitest/pretty-format4.1.10indirekt
npm@vitest/runner4.1.10indirekt
npm@vitest/snapshot4.1.10indirekt
npm@vitest/spy4.1.10indirekt
npm@vitest/utils4.1.10indirekt
npm@webgpu/types0.1.70indirekt
npm@xmldom/xmldom0.8.13indirekt
npmaccepts1.3.8indirekt
npmacorn8.17.0indirekt
npmacorn-jsx5.3.2indirekt
npmagent-base9.0.0indirekt
npmajv6.15.0indirekt
npmansi-colors4.1.3indirekt
npmansi-regex5.0.1indirekt
npmany-promise1.3.0indirekt
npmarray-flatten1.1.1indirekt
npmarray-union2.1.0indirekt
npmassertion-error2.0.1indirekt
npmbabel-plugin-jsx-dom-expressions0.40.7indirekt
npmbabel-preset-solid1.9.12indirekt
npmbalanced-match4.0.4indirekt
npmbaseline-browser-mapping2.10.31indirekt
npmbetter-path-resolve1.0.0indirekt
npmbidi-js1.0.3indirekt
npmbody-parser1.20.6indirekt
npmbrace-expansion5.0.6indirekt
npmbraces3.0.3indirekt
npmbrowserslist4.28.2indirekt
npmbundle-require5.1.0indirekt
npmbytes3.1.2indirekt
npmcac6.7.14indirekt
npmcall-bind-apply-helpers1.0.2indirekt
npmcall-bound1.0.4indirekt
npmcaniuse-lite1.0.30001793indirekt
npmchai6.2.2indirekt
npmchardet2.1.1indirekt
npmchokidar4.0.3indirekt
npmcodemirror6.0.2indirekt
npmcodemirror^6.0.2indirekt
npmcomlink4.4.2indirekt
npmcomlink^4.4.2indirekt
npmcommander4.1.1indirekt
npmconfbox0.1.8indirekt
npmconsola3.4.2indirekt
npmcontent-disposition0.5.4indirekt
npmcontent-type1.0.5indirekt
npmconvert-source-map2.0.0indirekt
npmcookie0.7.2indirekt
npmcookie-signature1.0.7indirekt
npmcrelt1.0.6indirekt
npmcross-spawn7.0.6indirekt
npmcss-tree3.2.1indirekt
npmcsstype3.2.3indirekt
npmdata-urls7.0.0indirekt
npmdebug2.6.9indirekt
npmdebug4.4.3indirekt
npmdecimal.js10.6.0indirekt
npmdeep-is0.1.4indirekt
npmdepd2.0.0indirekt
npmdestroy1.2.0indirekt
npmdetect-indent6.1.0indirekt
npmdetect-libc2.1.2indirekt
npmdir-glob3.0.1indirekt
npmdunder-proto1.0.1indirekt
npmearcut3.0.2indirekt
npmee-first1.1.1indirekt
npmelectron-to-chromium1.5.361indirekt
npmencodeurl2.0.0indirekt
npmenquirer2.4.1indirekt
npmentities6.0.1indirekt
npmentities8.0.0indirekt
npmes-define-property1.0.1indirekt
npmes-errors1.3.0indirekt
npmes-module-lexer2.1.0indirekt
npmes-object-atoms1.1.2indirekt
npmesbuild0.28.1indirekt
npmescalade3.2.0indirekt
npmescape-html1.0.3indirekt
npmescape-string-regexp4.0.0indirekt
npmeslint10.6.0indirekt
npmeslint^10.6.0indirekt
npmeslint-plugin-solid0.14.5indirekt
npmeslint-plugin-solid^0.14.0indirekt
npmeslint-scope9.1.2indirekt
npmeslint-visitor-keys3.4.3indirekt
npmeslint-visitor-keys5.0.1indirekt
npmespree11.2.0indirekt
npmesprima4.0.1indirekt
npmesquery1.7.0indirekt
npmesrecurse4.3.0indirekt
npmestraverse5.3.0indirekt
npmestree-walker3.0.3indirekt
npmesutils2.0.3indirekt
npmetag1.8.1indirekt
npmeventemitter34.0.7indirekt
npmeventemitter35.0.4indirekt
npmexpect-type1.3.0indirekt
npmextendable-error0.1.7indirekt
npmfake-indexeddb6.2.5indirekt
npmfake-indexeddb^6.0.0indirekt
npmfast-deep-equal3.1.3indirekt
npmfast-glob3.3.3indirekt
npmfast-json-stable-stringify2.1.0indirekt
npmfast-levenshtein2.0.6indirekt
npmfastq1.20.1indirekt
npmfdir6.5.0indirekt
npmfile-entry-cache8.0.0indirekt
npmfill-range7.1.1indirekt
npmfinalhandler1.3.2indirekt
npmfind-up4.1.0indirekt
npmfind-up5.0.0indirekt
npmfix-dts-default-cjs-exports1.0.1indirekt
npmflat-cache4.0.1indirekt
npmflatted3.4.2indirekt
npmfollow-redirects1.16.0indirekt
npmforwarded0.2.0indirekt
npmfresh0.5.2indirekt
npmfs-extra7.0.1indirekt
npmfs-extra8.1.0indirekt
npmfsevents2.3.3indirekt
npmfunction-bind1.1.2indirekt
npmgensync1.0.0-beta.2indirekt
npmget-intrinsic1.3.0indirekt
npmget-proto1.0.1indirekt
npmgifuct-js2.1.2indirekt
npmglob-parent5.1.2indirekt
npmglob-parent6.0.2indirekt
npmglobals17.7.0indirekt
npmglobals^17.7.0indirekt
npmglobby11.1.0indirekt
npmgopd1.2.0indirekt
npmgraceful-fs4.2.11indirekt
npmhas-symbols1.1.0indirekt
npmhasown2.0.4indirekt
npmhtml-encoding-sniffer6.0.0indirekt
npmhtml-entities2.3.3indirekt
npmhtml-tags3.3.1indirekt
npmhttp-errors2.0.1indirekt
npmhttps-proxy-agent9.1.0indirekt
npmhttps-proxy-agent^9.1.0indirekt
npmhuman-id4.1.3indirekt
npmiconv-lite0.4.24indirekt
npmiconv-lite0.7.2indirekt
npmignore5.3.2indirekt
npmignore7.0.5indirekt
npmimurmurhash0.1.4indirekt
npminherits2.0.4indirekt
npminline-style-parser0.2.7indirekt
npmipaddr.js1.9.1indirekt
npmis-extglob2.1.1indirekt
npmis-glob4.0.3indirekt
npmis-html2.0.0indirekt
npmis-number7.0.0indirekt
npmis-potential-custom-element-name1.0.1indirekt
npmis-subdir1.2.0indirekt
npmis-what4.1.16indirekt
npmis-windows1.0.2indirekt
npmisexe2.0.0indirekt
npmismobilejs1.1.1indirekt
npmjoycon3.1.1indirekt
npmjs-binary-schema-parser2.0.3indirekt
npmjs-tokens4.0.0indirekt
npmjs-yaml3.15.0indirekt
npmjs-yaml4.3.0indirekt
npmjsdom29.1.1indirekt
npmjsdom^29.1.1indirekt
npmjsesc3.1.0indirekt
npmjson-buffer3.0.1indirekt
npmjson-schema-traverse0.4.1indirekt
npmjson-stable-stringify-without-jsonify1.0.1indirekt
npmjson52.2.3indirekt
npmjsonfile4.0.0indirekt
npmkebab-case1.0.2indirekt
npmkeyv4.5.4indirekt
npmknown-css-properties0.30.0indirekt
npmlevn0.4.1indirekt
npmlightningcss1.32.0indirekt
npmlightningcss-android-arm641.32.0indirekt
npmlightningcss-darwin-arm641.32.0indirekt
npmlightningcss-darwin-x641.32.0indirekt
npmlightningcss-freebsd-x641.32.0indirekt
npmlightningcss-linux-arm-gnueabihf1.32.0indirekt
npmlightningcss-linux-arm64-gnu1.32.0indirekt
npmlightningcss-linux-arm64-musl1.32.0indirekt
npmlightningcss-linux-x64-gnu1.32.0indirekt
npmlightningcss-linux-x64-musl1.32.0indirekt
npmlightningcss-win32-arm64-msvc1.32.0indirekt
npmlightningcss-win32-x64-msvc1.32.0indirekt
npmlilconfig3.1.3indirekt
npmlines-and-columns1.2.4indirekt
npmload-tsconfig0.2.5indirekt
npmlocate-path5.0.0indirekt
npmlocate-path6.0.0indirekt
npmlodash.startcase4.4.0indirekt
npmlru-cache11.5.0indirekt
npmlru-cache5.1.1indirekt
npmlucide-solid1.23.0indirekt
npmlucide-solid^1.23.0indirekt
npmlz-string1.5.0indirekt
npmlz-string^1.5.0indirekt
npmmagic-string0.30.21indirekt
npmmath-intrinsics1.1.0indirekt
npmmdn-data2.27.1indirekt
npmmedia-typer0.3.0indirekt
npmmerge-anything5.1.7indirekt
npmmerge-descriptors1.0.3indirekt
npmmerge21.4.1indirekt
npmmethods1.1.2indirekt
npmmicromatch4.0.8indirekt
npmmime1.6.0indirekt
npmmime-db1.52.0indirekt
npmmime-types2.1.35indirekt
npmminimatch10.2.5indirekt
npmmlly1.8.2indirekt
npmmri1.2.0indirekt
npmms2.0.0indirekt
npmms2.1.3indirekt
npmmz2.7.0indirekt
npmnanoid3.3.15indirekt
npmnatural-compare1.4.0indirekt
npmnegotiator0.6.3indirekt
npmnode-releases2.0.46indirekt
npmobject-assign4.1.1indirekt
npmobject-inspect1.13.4indirekt
npmobug2.1.1indirekt
npmon-finished2.4.1indirekt
npmoptionator0.9.4indirekt
npmoutdent0.5.0indirekt
npmp-filter2.1.0indirekt
npmp-limit2.3.0indirekt
npmp-limit3.1.0indirekt
npmp-locate4.1.0indirekt
npmp-locate5.0.0indirekt
npmp-map2.1.0indirekt
npmp-try2.2.0indirekt
npmpackage-manager-detector0.2.11indirekt
npmparse-svg-path0.2.0indirekt
npmparse57.3.0indirekt
npmparse58.0.1indirekt
npmparseurl1.3.3indirekt
npmpath-exists4.0.0indirekt
npmpath-key3.1.1indirekt
npmpath-to-regexp0.1.13indirekt
npmpath-type4.0.0indirekt
npmpathe2.0.3indirekt
npmpicocolors1.1.1indirekt
npmpicomatch2.3.2indirekt
npmpicomatch4.0.4indirekt
npmpify4.0.1indirekt
npmpirates4.0.7indirekt
npmpixi.js8.19.0indirekt
npmpixi.js^8.19.0indirekt
npmpkg-types1.3.1indirekt
npmpostcss8.5.16indirekt
npmpostcss-load-config6.0.1indirekt
npmprelude-ls1.2.1indirekt
npmprettier2.8.8indirekt
npmproxy-addr2.0.7indirekt
npmproxy-agent-negotiate1.1.0indirekt
npmpunycode2.3.1indirekt
npmqs6.15.3indirekt
npmquansync0.2.11indirekt
npmqueue-microtask1.2.3indirekt
npmrange-parser1.2.1indirekt
npmraw-body2.5.3indirekt
npmread-yaml-file1.1.0indirekt
npmreaddirp4.1.2indirekt
npmrequire-from-string2.0.2indirekt
npmrequires-port1.0.0indirekt
npmresolve-from5.0.0indirekt
npmreusify1.1.0indirekt
npmrolldown1.1.4indirekt
npmrollup4.60.4indirekt
npmrollup4.62.0indirekt
npmrun-parallel1.2.0indirekt
npmsafe-buffer5.2.1indirekt
npmsafer-buffer2.1.2indirekt
npmsaxes6.0.0indirekt
npmsemver6.3.1indirekt
npmsemver7.8.1indirekt
npmsemver7.8.5indirekt
npmsend0.19.2indirekt
npmseroval1.5.4indirekt
npmseroval-plugins1.5.4indirekt
npmserve-static1.16.3indirekt
npmsetprototypeof1.2.0indirekt
npmshebang-command2.0.0indirekt
npmshebang-regex3.0.0indirekt
npmside-channel1.1.1indirekt
npmside-channel-list1.0.1indirekt
npmside-channel-map1.0.1indirekt
npmside-channel-weakmap1.0.2indirekt
npmsiginfo2.0.0indirekt
npmsignal-exit4.1.0indirekt
npmslash3.0.0indirekt
npmsolid-codemirror2.3.3indirekt
npmsolid-codemirror^2.3.3indirekt
npmsolid-devtools0.34.5indirekt
npmsolid-devtools^0.34.5indirekt
npmsolid-js1.9.14indirekt
npmsolid-js^1.9.14indirekt
npmsolid-refresh0.6.3indirekt
npmsource-map0.7.6indirekt
npmsource-map-js1.2.1indirekt
npmspawndamnit3.0.1indirekt
npmsprintf-js1.0.3indirekt
npmstackback0.0.2indirekt
npmstatuses2.0.2indirekt
npmstd-env4.1.0indirekt
npmstrip-ansi6.0.1indirekt
npmstrip-bom3.0.0indirekt
npmstyle-mod4.1.3indirekt
npmstyle-to-object1.0.14indirekt
npmsucrase3.35.1indirekt
npmsymbol-tree3.2.4indirekt
npmterm-size2.2.1indirekt
npmthenify3.3.1indirekt
npmthenify-all1.6.0indirekt
npmtiny-lru11.4.7indirekt
npmtinybench2.9.0indirekt
npmtinyexec0.3.2indirekt
npmtinyexec1.1.2indirekt
npmtinyglobby0.2.16indirekt
npmtinyglobby0.2.17indirekt
npmtinyrainbow3.1.0indirekt
npmtldts7.0.30indirekt
npmtldts-core7.0.30indirekt
npmto-regex-range5.0.1indirekt
npmtoidentifier1.0.1indirekt
npmtough-cookie6.0.1indirekt
npmtr466.0.0indirekt
npmtree-kill1.2.2indirekt
npmts-api-utils2.5.0indirekt
npmts-interface-checker0.1.13indirekt
npmtslib2.8.1indirekt
npmtsup8.5.1indirekt
npmtsup^8.0.0indirekt
npmtype-check0.4.0indirekt
npmtype-is1.6.18indirekt
npmtypescript6.0.3indirekt
npmtypescript^6.0.3indirekt
npmtypescript-eslint8.63.0indirekt
npmtypescript-eslint^8.63.0indirekt
npmufo1.6.4indirekt
npmundici7.28.0indirekt
npmundici-types8.3.0indirekt
npmuniversalify0.1.2indirekt
npmunpipe1.0.0indirekt
npmupdate-browserslist-db1.2.3indirekt
npmuri-js4.4.1indirekt
npmutils-merge1.0.1indirekt
npmvary1.1.2indirekt
npmvite8.1.3indirekt
npmvite^8.1.3indirekt
npmvite-plugin-singlefile2.3.3indirekt
npmvite-plugin-singlefile^2.3.3indirekt
npmvite-plugin-solid2.11.12indirekt
npmvite-plugin-solid^2.11.0indirekt
npmvitefu1.1.3indirekt
npmvitest4.1.10indirekt
npmvitest^4.1.10indirekt
npmw3c-keyname2.2.8indirekt
npmw3c-xmlserializer5.0.0indirekt
npmwebidl-conversions8.0.1indirekt
npmwhatwg-mimetype5.0.0indirekt
npmwhatwg-url16.0.1indirekt
npmwhich2.0.2indirekt
npmwhy-is-node-running2.3.0indirekt
npmword-wrap1.2.5indirekt
npmxml-name-validator5.0.0indirekt
npmxmlchars2.2.0indirekt
npmyallist3.1.1indirekt
npmyocto-queue0.1.0indirekt
Abhängigkeits-Advisories 21

Dieses Repository veröffentlicht kein vom Index auflösbares Paket, daher wurde sein eigener Abhängigkeitsgraph bewertet – 1.127 Pakete, darunter auch Entwicklungs- und Test-Pins, die nie ausgeliefert werden: 21 tragen bekannte Advisories, davon 0 direkte. 43 konnten nicht bewertet werden – keine aufgelöste Version, ein nicht unterstütztes Ökosystem, oder außerhalb der ausgewiesenen Paketliste.

PaketVersionBeziehungSchweregradAdvisoriesBehoben in
brace-expansion5.0.6indirekthoch25.0.8
postcss8.5.16indirekthoch18.5.18
quick-xml0.39.4indirekthoch20.41.0
glib0.18.5indirektmittel20.20.0
@babel/core7.29.0indirektniedrig18.0.0-rc.6
atk0.18.2indirektunbekannt1
atk-sys0.18.2indirektunbekannt1
gdk0.18.2indirektunbekannt1
gdk-sys0.18.2indirektunbekannt1
gdkwayland-sys0.18.2indirektunbekannt1
gdkx110.18.2indirektunbekannt1
gdkx11-sys0.18.2indirektunbekannt1
gtk0.18.2indirektunbekannt1
gtk-sys0.18.2indirektunbekannt1
gtk3-macros0.18.2indirektunbekannt1
proc-macro-error1.0.4indirektunbekannt1
unic-char-property0.9.0indirektunbekannt1
unic-char-range0.9.0indirektunbekannt1
unic-common0.9.0indirektunbekannt1
unic-ucd-ident0.9.0indirektunbekannt1
unic-ucd-version0.9.0indirektunbekannt1

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": 2500,
      "has_wiki": false,
      "homepage": null,
      "languages": {
        "HTML": 937,
        "Rust": 1513,
        "JavaScript": 30709,
        "TypeScript": 1354143
      },
      "pushed_at": "2026-07-19T14:13:17Z",
      "created_at": "2026-05-12T23:12:22Z",
      "owner_type": "User",
      "updated_at": "2026-07-19T14:11:19Z",
      "description": null,
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "ISC",
      "default_branch": "main",
      "license_spdx_raw": "ISC",
      "primary_language": "TypeScript",
      "significant_languages": [
        "TypeScript"
      ]
    },
    "owner": {
      "blog": null,
      "name": "Bastian Hoyer",
      "type": "User",
      "login": "bastianh",
      "company": null,
      "location": "Hamburg, Germany",
      "followers": 26,
      "avatar_url": "https://avatars.githubusercontent.com/u/17590?v=4",
      "created_at": "2008-07-20T11:17:59Z",
      "is_verified": null,
      "public_repos": 28,
      "account_age_days": 6579
    },
    "license": {
      "state": "standard",
      "spdx_id": "ISC",
      "raw_spdx": "ISC",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "screepsmod-client-new@0.2.25",
          "kind": "other",
          "published_at": "2026-07-19T14:13:30Z"
        },
        {
          "tag": "screeps-connectivity@0.16.0",
          "kind": "other",
          "published_at": "2026-07-19T14:13:27Z"
        },
        {
          "tag": "screeps-client@0.18.0",
          "kind": "other",
          "published_at": "2026-07-19T14:13:24Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.3.8",
          "kind": "other",
          "published_at": "2026-07-19T14:13:21Z"
        },
        {
          "tag": "screeps-client-proxy@0.1.3",
          "kind": "other",
          "published_at": "2026-07-19T14:13:18Z"
        },
        {
          "tag": "screeps-connectivity@0.15.2",
          "kind": "other",
          "published_at": "2026-07-18T13:34:30Z"
        },
        {
          "tag": "screeps-client@0.17.1",
          "kind": "other",
          "published_at": "2026-07-17T06:22:38Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.3.7",
          "kind": "other",
          "published_at": "2026-07-17T06:22:35Z"
        },
        {
          "tag": "screeps-client-proxy@0.1.2",
          "kind": "other",
          "published_at": "2026-07-12T10:55:09Z"
        },
        {
          "tag": "screeps-connectivity@0.15.1",
          "kind": "other",
          "published_at": "2026-07-12T08:20:40Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.3.6",
          "kind": "other",
          "published_at": "2026-07-12T08:20:37Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.24",
          "kind": "other",
          "published_at": "2026-07-12T08:20:34Z"
        },
        {
          "tag": "screeps-client-proxy@0.1.1",
          "kind": "other",
          "published_at": "2026-07-12T08:20:31Z"
        },
        {
          "tag": "screeps-client@0.17.0",
          "kind": "other",
          "published_at": "2026-07-12T08:20:28Z"
        },
        {
          "tag": "screeps-client@0.16.0",
          "kind": "other",
          "published_at": "2026-07-11T19:39:10Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.23",
          "kind": "other",
          "published_at": "2026-07-11T19:39:07Z"
        },
        {
          "tag": "screeps-connectivity@0.15.0",
          "kind": "other",
          "published_at": "2026-07-11T19:39:05Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.3.5",
          "kind": "other",
          "published_at": "2026-07-11T19:39:02Z"
        },
        {
          "tag": "screeps-connectivity@0.14.0",
          "kind": "other",
          "published_at": "2026-07-07T20:21:35Z"
        },
        {
          "tag": "screeps-client@0.15.0",
          "kind": "other",
          "published_at": "2026-07-07T20:21:32Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.3.4",
          "kind": "other",
          "published_at": "2026-07-07T20:21:29Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.22",
          "kind": "other",
          "published_at": "2026-07-07T20:21:26Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.3.3",
          "kind": "other",
          "published_at": "2026-07-06T08:10:48Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.21",
          "kind": "other",
          "published_at": "2026-07-06T08:10:45Z"
        },
        {
          "tag": "screeps-connectivity@0.13.1",
          "kind": "other",
          "published_at": "2026-07-06T08:10:42Z"
        },
        {
          "tag": "screeps-client@0.14.2",
          "kind": "other",
          "published_at": "2026-07-06T08:10:39Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.3.2",
          "kind": "other",
          "published_at": "2026-07-04T21:10:19Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.3.1",
          "kind": "other",
          "published_at": "2026-07-04T18:42:08Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.20",
          "kind": "other",
          "published_at": "2026-07-04T18:42:04Z"
        },
        {
          "tag": "screeps-client@0.14.1",
          "kind": "other",
          "published_at": "2026-07-04T18:42:01Z"
        },
        {
          "tag": "screeps-connectivity@0.13.0",
          "kind": "other",
          "published_at": "2026-07-04T18:41:59Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.3.0",
          "kind": "other",
          "published_at": "2026-07-04T08:39:11Z"
        },
        {
          "tag": "screeps-connectivity@0.12.0",
          "kind": "other",
          "published_at": "2026-07-04T08:39:08Z"
        },
        {
          "tag": "screeps-client@0.14.0",
          "kind": "other",
          "published_at": "2026-07-04T08:39:05Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.19",
          "kind": "other",
          "published_at": "2026-07-04T08:39:02Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.18",
          "kind": "other",
          "published_at": "2026-07-01T19:11:50Z"
        },
        {
          "tag": "screeps-client@0.13.1",
          "kind": "other",
          "published_at": "2026-07-01T19:11:47Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.19",
          "kind": "other",
          "published_at": "2026-07-01T19:11:44Z"
        },
        {
          "tag": "screeps-connectivity@0.11.0",
          "kind": "other",
          "published_at": "2026-07-01T19:11:41Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.17",
          "kind": "other",
          "published_at": "2026-06-30T15:15:33Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.18",
          "kind": "other",
          "published_at": "2026-06-30T15:15:30Z"
        },
        {
          "tag": "screeps-client@0.13.0",
          "kind": "other",
          "published_at": "2026-06-30T15:15:27Z"
        },
        {
          "tag": "screeps-connectivity@0.10.0",
          "kind": "other",
          "published_at": "2026-06-30T15:15:24Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.17",
          "kind": "other",
          "published_at": "2026-06-28T17:38:18Z"
        },
        {
          "tag": "screeps-connectivity@0.9.0",
          "kind": "other",
          "published_at": "2026-06-28T17:38:15Z"
        },
        {
          "tag": "screeps-client@0.12.2",
          "kind": "other",
          "published_at": "2026-06-28T17:38:12Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.16",
          "kind": "other",
          "published_at": "2026-06-27T19:15:00Z"
        },
        {
          "tag": "screeps-client@0.12.1",
          "kind": "other",
          "published_at": "2026-06-27T19:14:57Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.16",
          "kind": "other",
          "published_at": "2026-06-27T19:14:54Z"
        },
        {
          "tag": "screeps-connectivity@0.8.1",
          "kind": "other",
          "published_at": "2026-06-27T17:12:45Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.15",
          "kind": "other",
          "published_at": "2026-06-27T16:25:10Z"
        },
        {
          "tag": "screeps-client@0.12.0",
          "kind": "other",
          "published_at": "2026-06-27T16:25:07Z"
        },
        {
          "tag": "screeps-connectivity@0.8.0",
          "kind": "other",
          "published_at": "2026-06-27T16:25:04Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.15",
          "kind": "other",
          "published_at": "2026-06-27T16:25:01Z"
        },
        {
          "tag": "screeps-connectivity@0.7.0",
          "kind": "other",
          "published_at": "2026-06-25T20:22:33Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.14",
          "kind": "other",
          "published_at": "2026-06-25T20:22:30Z"
        },
        {
          "tag": "screeps-client@0.11.0",
          "kind": "other",
          "published_at": "2026-06-25T20:22:27Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.14",
          "kind": "other",
          "published_at": "2026-06-25T20:22:24Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.13",
          "kind": "other",
          "published_at": "2026-06-24T08:05:44Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.13",
          "kind": "other",
          "published_at": "2026-06-24T08:05:41Z"
        },
        {
          "tag": "screeps-client@0.10.0",
          "kind": "other",
          "published_at": "2026-06-24T08:05:38Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.12",
          "kind": "other",
          "published_at": "2026-06-22T18:56:09Z"
        },
        {
          "tag": "screeps-connectivity@0.6.0",
          "kind": "other",
          "published_at": "2026-06-22T18:56:06Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.12",
          "kind": "other",
          "published_at": "2026-06-22T18:56:03Z"
        },
        {
          "tag": "screeps-client@0.9.0",
          "kind": "other",
          "published_at": "2026-06-22T18:56:00Z"
        },
        {
          "tag": "screeps-client@0.8.0",
          "kind": "other",
          "published_at": "2026-06-21T14:59:51Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.11",
          "kind": "other",
          "published_at": "2026-06-21T14:59:48Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.11",
          "kind": "other",
          "published_at": "2026-06-21T14:59:45Z"
        },
        {
          "tag": "screeps-client@0.7.4",
          "kind": "other",
          "published_at": "2026-06-20T06:31:00Z"
        },
        {
          "tag": "screeps-client@0.7.3",
          "kind": "other",
          "published_at": "2026-06-19T14:43:38Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.10",
          "kind": "other",
          "published_at": "2026-06-19T14:43:35Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.10",
          "kind": "other",
          "published_at": "2026-06-19T14:43:32Z"
        },
        {
          "tag": "screeps-connectivity@0.5.2",
          "kind": "other",
          "published_at": "2026-06-19T08:25:06Z"
        },
        {
          "tag": "screeps-client@0.7.2",
          "kind": "other",
          "published_at": "2026-06-19T08:25:03Z"
        },
        {
          "tag": "screeps-client@0.7.1",
          "kind": "other",
          "published_at": "2026-06-18T18:29:07Z"
        },
        {
          "tag": "screeps-client@0.7.0",
          "kind": "other",
          "published_at": "2026-06-18T14:16:35Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.9",
          "kind": "other",
          "published_at": "2026-06-18T14:16:32Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.9",
          "kind": "other",
          "published_at": "2026-06-18T14:16:29Z"
        },
        {
          "tag": "screeps-connectivity@0.5.1",
          "kind": "other",
          "published_at": "2026-06-08T05:46:10Z"
        },
        {
          "tag": "screeps-client@0.6.1",
          "kind": "other",
          "published_at": "2026-06-08T05:46:07Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.8",
          "kind": "other",
          "published_at": "2026-05-31T20:11:23Z"
        },
        {
          "tag": "screeps-client@0.6.0",
          "kind": "other",
          "published_at": "2026-05-31T20:11:20Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.8",
          "kind": "other",
          "published_at": "2026-05-31T20:11:17Z"
        },
        {
          "tag": "screeps-connectivity@0.5.0",
          "kind": "other",
          "published_at": "2026-05-30T21:19:39Z"
        },
        {
          "tag": "screeps-client@0.5.1",
          "kind": "other",
          "published_at": "2026-05-30T21:19:36Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.7",
          "kind": "other",
          "published_at": "2026-05-29T20:58:14Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.7",
          "kind": "other",
          "published_at": "2026-05-29T20:58:11Z"
        },
        {
          "tag": "screeps-connectivity@0.4.0",
          "kind": "other",
          "published_at": "2026-05-29T20:58:08Z"
        },
        {
          "tag": "screeps-client@0.5.0",
          "kind": "other",
          "published_at": "2026-05-29T20:58:05Z"
        },
        {
          "tag": "screeps-client@0.4.1",
          "kind": "other",
          "published_at": "2026-05-28T07:24:49Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.6",
          "kind": "other",
          "published_at": "2026-05-28T07:24:46Z"
        },
        {
          "tag": "screeps-connectivity@0.3.0",
          "kind": "other",
          "published_at": "2026-05-28T06:57:02Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.5",
          "kind": "other",
          "published_at": "2026-05-28T06:56:59Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.6",
          "kind": "other",
          "published_at": "2026-05-28T06:56:56Z"
        },
        {
          "tag": "screeps-client@0.4.0",
          "kind": "other",
          "published_at": "2026-05-28T06:56:53Z"
        },
        {
          "tag": "screeps-client@0.3.5",
          "kind": "other",
          "published_at": "2026-05-26T10:01:06Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.5",
          "kind": "other",
          "published_at": "2026-05-25T10:02:14Z"
        },
        {
          "tag": "screeps-client@0.3.4",
          "kind": "other",
          "published_at": "2026-05-25T10:02:11Z"
        },
        {
          "tag": "xxscreeps-mod-client@0.2.4",
          "kind": "other",
          "published_at": "2026-05-24T19:23:49Z"
        },
        {
          "tag": "screepsmod-client-new@0.2.4",
          "kind": "other",
          "published_at": "2026-05-24T19:23:46Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "2c0281e7c9b876234f9ef1a103fdfd750ff6ac7f",
          "body": "chore: version packages",
          "is_bot": false,
          "headline": "Merge pull request #224 from bastianh/changeset-release/main",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-19T14:11:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "24c18f29eb4dfeb9e66e7660e5b190173e9a52d3",
          "body": null,
          "is_bot": true,
          "headline": "chore: version packages",
          "author_name": "github-actions[bot]",
          "author_login": "github-actions[bot]",
          "committed_at": "2026-07-19T14:08:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b025835ed9787b2337f743b9eb0a35c846954a17",
          "body": "Seed embedded client version from host mod (skip /api/version fetch)",
          "is_bot": false,
          "headline": "Merge pull request #231 from bastianh/feat/embedded-version-bootstrap",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-19T14:07:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f218429bc992cfab6162e2c0aa30bcfef51a85c2",
          "body": "… fetch\n\nEmbedded clients (xxscreeps-mod-client and screepsmod-client-new) now inline\nthe /api/version payload into the page as window.__SCREEPS_BOOTSTRAP__, prefetched\nin-process and cached for 5 min. The client seeds it into both the pre-login UI\n(useServerInfo) and the connection (ScreepsClient.i\n[…]\ngured from the first frame with zero round-trips (xxscreeps) or just the\nrequired /api/authmod call on screepsmod-auth servers.\n\nAdds ScreepsClient.initialVersion option and ServerStore.seedVersion().",
          "is_bot": false,
          "headline": "feat: seed embedded client version from host mod to skip /api/version…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-19T13:59:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b1e2c31c796049744866fe1a0d9e31e5b37b1a9d",
          "body": "docs: refresh package table and client source-structure map",
          "is_bot": false,
          "headline": "Merge pull request #230 from bastianh/docs/structure-refresh",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-19T13:35:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b71d0650af30f94f58287e734c656cb975ff0634",
          "body": "refactor(client): share login building blocks between the two login forms",
          "is_bot": false,
          "headline": "Merge pull request #229 from bastianh/refactor/login-shared",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-19T13:34:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "925df57a7b4213ad34035c32199a1a495e65cdb4",
          "body": "refactor(client): split SelectionList into selection/ detail modules",
          "is_bot": false,
          "headline": "Merge pull request #228 from bastianh/refactor/selection-list-split",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-19T13:34:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5742ed01a79a13b6de5025612736ae640d9eacda",
          "body": "refactor(client): central UI theme tokens + shared number formatters",
          "is_bot": false,
          "headline": "Merge pull request #227 from bastianh/refactor/central-theme",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-19T13:33:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e1028cb48a36fdb38db0795e502f712847162bdb",
          "body": "refactor(client): split ObjectLayer into per-object renderer modules",
          "is_bot": false,
          "headline": "Merge pull request #226 from bastianh/refactor/object-layer-split",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-19T13:33:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "79690b863c9d13ada30a56eefcabf8859653dcf5",
          "body": "feat(client): damage-graded hits bar in the selection panel",
          "is_bot": false,
          "headline": "Merge pull request #225 from bastianh/feat/selection-hits-bar",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-19T13:32:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "08956995ef795fa0864d56ba2ca7099f21288548",
          "body": "CLAUDE.md now lists all six workspace packages (screeps-client-proxy,\nscreeps-desktop added; xxscreeps-mod-client's published name fixed) and\ndrops the stale docs/superpowers and test-live.mjs references.\ndocs/claude/client.md's source tree catches up with market/, power/,\neditor/, data/, the selection/, login/ and renderer/objects/ modules,\nand the stores/utils that have landed since it was written.",
          "is_bot": false,
          "headline": "docs: refresh package table and client source-structure map",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-19T13:29:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ddc22770a2d1667a1babaa6b15af3b53e940a9af",
          "body": "…orms\n\ncomponents/login/shared.tsx now owns the input styles, password/token\ntoggle, server-password field, error line, connect button, Steam/Discord\nbuttons, and the server-capability probes; LoginForm and\nDesktopLoginForm consume them instead of carrying parallel copies.",
          "is_bot": false,
          "headline": "refactor(client): share login building blocks between the two login f…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-19T13:27:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7cc40b469945705373ea0bf3549f0149d9f262aa",
          "body": "SelectionList.tsx (1280 lines) now holds only the list + item chrome;\neach detail view moves to components/selection/ (CreepDetails,\nFlagDetails, ControllerDetails, ExtensionDetails, StoreStructureDetails,\nPowerBankDetails, RuinDetails, DefaultDetails, StoreDetails), with the\nlookup tables and kv-grid styles in shared.ts and the type→component\nmap in registry.ts. No behavior change.",
          "is_bot": false,
          "headline": "refactor(client): split SelectionList into selection/ detail modules",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-19T13:24:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8e9f7ed6342de807473b1443054ef3af19a3e08a",
          "body": "components/theme.ts now owns the GitHub-dark palette; market/theme.ts\nand power/theme.ts re-export it (keeping their own accents), which also\nunifies the drifted raised-panel tone (#1c2129 vs #1c2128). fmtAmount\nand fmtPrice join formatLargeNumber in utils/formatNumber.ts; MeterBar\nuses the tokens instead of hardcoded hex.",
          "is_bot": false,
          "headline": "refactor(client): central UI theme tokens + shared number formatters",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-19T13:20:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e678c10c3afa8e978ee448ad6425682e3dd04012",
          "body": "ObjectLayer.ts (4204 lines) now holds only the ObjectLayer class; the\nper-type draw/update helpers and the createObjectVisual switch move to\nrenderer/objects/ — one module per object type, shared helpers in\ncommon.ts/store.ts/types.ts, and a dispatcher in createObjectVisual.ts\nthat mirrors the original prelude/postlude exactly. No behavior change.",
          "is_bot": false,
          "headline": "refactor(client): split ObjectLayer into per-object renderer modules",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-19T13:18:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3b2c5310ae7358a1fd7b82e08369a25cd1ab0635",
          "body": "Adds a reusable MeterBar (label + value/max fill bar) and a HitsBar that\nrenders only when an object is below full health, colored green/amber/red\nby remaining ratio. The RCL and store-fill bars in SelectionList now use\nthe shared MeterBar; formatLargeNumber moves to utils/formatNumber.",
          "is_bot": false,
          "headline": "feat(client): damage-graded hits bar in the selection panel",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-19T13:04:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b95ef0d228d29e63203dddb25cccf15e910ce84c",
          "body": "feat(client): render room-view minerals as tinted disc + letter",
          "is_bot": false,
          "headline": "Merge pull request #223 from bastianh/feat/room-view-mineral-disc",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-18T23:51:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3fdc90700eb4d1de05f03392ce97b7557bfd457f",
          "body": "feat(client): drop l/c/y hotkeys for log, console, and memory panels",
          "is_bot": false,
          "headline": "Merge pull request #222 from bastianh/claude/drop-panel-hotkeys",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-18T23:51:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "114e4b1e3efdebbbd9ed4c1a07d6434e02fa794c",
          "body": null,
          "is_bot": false,
          "headline": "feat(client): render room-view minerals as tinted disc + letter",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-18T21:29:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "202bb3d386da36088688e15f3c03145bf6fda060",
          "body": "The 'c' shortcut clashed with copy/paste. The panels remain toggleable\nvia their toolbar buttons. Also removes a stale, already-released\nchangeset that lingered on main.",
          "is_bot": false,
          "headline": "feat(client): drop l/c/y hotkeys for log, console, and memory panels",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-18T21:17:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e1198c7db0469c2553a644eed46722489546e07b",
          "body": "chore: version packages",
          "is_bot": false,
          "headline": "Merge pull request #221 from bastianh/changeset-release/main",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-18T13:33:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8c6335395c2f17773fb18489561a627ef5b18a41",
          "body": null,
          "is_bot": true,
          "headline": "chore: version packages",
          "author_name": "github-actions[bot]",
          "author_login": "github-actions[bot]",
          "committed_at": "2026-07-18T05:51:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fee1f35eb9b6938ab28cbe59407409894bde467a",
          "body": "…bscription\n\nfix(connectivity): share ref-counted UserStore channel subscription",
          "is_bot": false,
          "headline": "Merge pull request #220 from bastianh/fix/userstore-shared-channel-su…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-18T05:51:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b39a0c12c5c02e3b14c96de48b31b7372c80cb09",
          "body": "Multiple callers subscribing to the same UserStore channel each installed\ntheir own socket listener, so every incoming frame was processed and\nre-emitted once per caller — producing duplicated console output.\n\nsubscribe() now installs a single shared, ref-counted socket subscription\nand listener per\n[…]\nl. Later callers only bump the ref count; the\nserver subscription and listener are torn down only after the last\nsubscriber disposes. Adds regression tests for shared fan-out and\nref-counted teardown.",
          "is_bot": false,
          "headline": "fix(connectivity): share ref-counted UserStore channel subscription",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-18T05:46:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a32c2358da1ad2551ac6f1c76499b805927d392a",
          "body": "chore: version packages",
          "is_bot": false,
          "headline": "Merge pull request #216 from bastianh/changeset-release/main",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-17T06:20:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5d64d14b223b14ced64b80cf2d462171bc0d6c46",
          "body": null,
          "is_bot": true,
          "headline": "chore: version packages",
          "author_name": "github-actions[bot]",
          "author_login": "github-actions[bot]",
          "committed_at": "2026-07-16T19:08:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dff5a486442ac7edb62b8190e8adfbd4f2e60c51",
          "body": "refactor(client): drop the structure theme setting",
          "is_bot": false,
          "headline": "Merge pull request #219 from bastianh/claude/drop-theme-setting-9f3a1c",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-16T19:08:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "06a2c6533b325e8fa1358e8579275e709ea650f8",
          "body": "The \"Structure theme\" dropdown offered \"Default (sprites)\" and \"Vector\n(procedural)\". Vector was never a real alternative: it passed a null theme\ninto ObjectLayer, which meant controller, flag, tower, mineral and deposit\nfell through to plain colored-rect fallbacks rather than to a procedural\nrender\n[…]\n.\n\nThe Theme type and defaultSpriteTheme stay. They are now a plain constant\nrather than a seam, and the sprite-drawing code still reads their specs —\nthat layer goes away with the spritesheet itself.",
          "is_bot": false,
          "headline": "refactor(client): drop the structure theme setting",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-16T19:06:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a8c09068a8104351b93ad9f2135b9457d4963382",
          "body": "…ering-f6b2cb\n\nDraw tombstones procedurally, and repack the atlas without the dead frames",
          "is_bot": false,
          "headline": "Merge pull request #218 from bastianh/claude/spritesheet-storage-rend…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-16T18:59:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e83d9daccb6c04f1f73530f719517c2cb1e36cd8",
          "body": "The regenerated spritesheet drops storage/{shell,fill} and grave/{shell,cross},\nwhich nothing has referenced since those two structures went procedural: 25\nframes down to 21, 61 KB down to 58 KB. The atlas now holds exactly the frames\nthe code asks for — none spare, none missing. It lands with the t\n[…]\nasks for — the theme's literals plus the\ndeposit/<type>/* and mineral/<type> names built at runtime — still exists in the\nnew atlas; a missing one would silently render Texture.EMPTY rather than fail.",
          "is_bot": false,
          "headline": "chore(client): repack the atlas and drop the dead sprite seam",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-16T18:55:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "12185835aec8f8d65d953e06a168c8a9f6887df0",
          "body": "…ering-f6b2cb\n\nRender storage and terminal from the official client's geometry",
          "is_bot": false,
          "headline": "Merge pull request #217 from bastianh/claude/spritesheet-storage-rend…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-16T18:43:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3a68c212c7f13676430702c12a080bf0db36bdce",
          "body": "Drop the grave/shell + grave/cross atlas path; the Graphics fallback that was\nalready there becomes the only one, so the look is unchanged apart from the\nbacking. Its ST_DARK fill is gone — the headstone is now outline plus mark, with\nthe terrain showing through, which is how vanilla draws it (upstr\n[…]\n RoomObject — the payload is untyped, and the fields are only\nknown to exist because the official client reads them — so the fade needs a sane\npair to engage and leaves the tombstone opaque otherwise.",
          "is_bot": false,
          "headline": "feat(client): draw tombstones procedurally, without the black backing",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-16T18:41:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0abba53cf34b02a1f836fe85bcb4e5e43a66ca4c",
          "body": "The light inner octagon was standing in for upstream's four arrows; draw the\narrows themselves (terminal-arrows.svg) instead, and give the plate upstream's\ntwo-tier build — a dark 90 frame around a grey 76 face, where the 7 frame is the\noctagon's stroke width. Octagon axes go 0.8 -> 0.85 (the diagon\n[…]\ner-resource squares, but takes its maximum from the 76 face, so a full store\nfills the face exactly. TERMINAL_SCALE sizes the whole thing at 1.27 tiles\ninstead of upstream's 1.7, in line with storage.",
          "is_bot": false,
          "headline": "feat(client): redraw the terminal from the official client's geometry",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-16T18:26:47Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cafe90b00db3f89b5b490209012f119cdd098bea",
          "body": null,
          "is_bot": false,
          "headline": "chore: add changeset for storage rendering",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-16T18:18:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b4c39aa3cd37b76db7cffb70585f12924b25621e",
          "body": null,
          "is_bot": false,
          "headline": "chore: add launch.json with the client dev and proxy servers",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-16T18:18:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "96513f720aae2233a89fdfe42a46b7c5a7aee964",
          "body": "Upstream draws the shell at 200px on a 100px tile, which overhangs by half a tile\nin each direction (1.54 x 1.94 tiles) and dwarfs its neighbours. Keep upstream's\nsilhouette but scale it to 1.00 x 1.26 tiles via a single STORAGE_SCALE knob.\n\nThe fill bars needed the same treatment: upstream sizes th\n[…]\nt of it.\nBoth unit bases (STORAGE_SVG_U for shell and inner box, STORAGE_PX_U for the bars)\nnow derive from STORAGE_SCALE, so stroke width and upstream's slight band overhang\nscale proportionally too.",
          "is_bot": false,
          "headline": "feat(client): scale storage down to just over a tile",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-16T18:18:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "200309ba84e742321b326ae4ca98c3de8e46ccab",
          "body": "…ometry\n\nStorage no longer pulls `storage/shell` + `storage/fill` from the spritesheet.\nThe procedural path now mirrors the official client's art instead of the old\noctagon: `storageShellPath` transcribes storage-border.svg's four arcs (caps\nr=120, sides r=300) via `arcToSvg`, filled dark and stroke\n[…]\neplaces — 1.54 x 1.94 tiles vs ~1.3 x 1.6\n— matching upstream's overhang. The atlas frames are now unused but left in\nplace, as is the generic `sprites` theme seam, which storage was the only user of.",
          "is_bot": false,
          "headline": "feat(client): draw storage procedurally from the official client's ge…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-16T18:09:43Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "35736f7a646e2207fea7e2d9db65185be7222e9d",
          "body": "…3d59d0\n\nfix(xxscreeps-mod): serve client via route allowlist, not backend blocklist",
          "is_bot": false,
          "headline": "Merge pull request #215 from bastianh/claude/xxscreeps-proxy-routing-…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-14T06:00:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "76dfef273212aaff0c0ca390fa8ff3adc1ed0c32",
          "body": "…cklist",
          "is_bot": false,
          "headline": "fix(xxscreeps-mod): serve client via route allowlist, not backend blo…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-13T19:23:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7973407a0c23aac54eb18631a0b34c77bbe75eb6",
          "body": "chore: version packages",
          "is_bot": false,
          "headline": "Merge pull request #214 from bastianh/changeset-release/main",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-12T10:53:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cc7d5a56b8c30553b42d8d9beaa321cfc51d7a17",
          "body": null,
          "is_bot": true,
          "headline": "chore: version packages",
          "author_name": "github-actions[bot]",
          "author_login": "github-actions[bot]",
          "committed_at": "2026-07-12T10:44:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4ec2f9bc8e32900d56fb2a3645e26fd394c9c068",
          "body": "fix(proxy): don't forward wrapped page URLs to the backend",
          "is_bot": false,
          "headline": "Merge pull request #213 from bastianh/proxy-page-url-redirect",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-12T10:43:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0e3915e3cb13bf6a7a33a572dd9cda877cc716ac",
          "body": "The proxy forwarded every /(backend)/… request verbatim, so opening the\nURL printed at startup — http://localhost:8080/(https://screeps.com)/ —\nserved the backend's website instead of the client. Restrict proxying to\nthe paths the client actually requests (/api, /socket, /room-history),\nredirect wrapped page navigations to the unwrapped SPA path, and print\nthe plain origin URL at startup. Also lets SPA deep links work in\npinned-backend mode instead of being proxied to the backend.",
          "is_bot": false,
          "headline": "fix(proxy): don't forward wrapped page URLs to the backend",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-12T10:29:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0fb7a37d5ce7b3bb3f515182b9a8847f56c506b1",
          "body": "chore: version packages",
          "is_bot": false,
          "headline": "Merge pull request #211 from bastianh/changeset-release/main",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-12T08:18:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c4742fe8118400bcb1b1080065604974a8db60e1",
          "body": null,
          "is_bot": true,
          "headline": "chore: version packages",
          "author_name": "github-actions[bot]",
          "author_login": "github-actions[bot]",
          "committed_at": "2026-07-12T08:14:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2fada7eea9104e945b29f87571859c3fd793c731",
          "body": "…ent-ei88ws\n\nAdd screeps-client-proxy: standalone local proxy for browser client",
          "is_bot": false,
          "headline": "Merge pull request #212 from bastianh/claude/integrated-proxy-new-cli…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-12T08:14:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "72aa123509a132c597183b6fca9bf7ecfeeeb67c",
          "body": "Drop screeps-client-proxy from the feature changeset so it isn't given a\nminor bump on first release. It still publishes (version not yet on npm) and\nis auto-patched to 0.1.1 by the internal-dependency cascade (it depends on\nscreeps-client, which bumps this cycle).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_019qQwQdF6LNJwxdUG2QRYZc",
          "is_bot": false,
          "headline": "chore: debut screeps-client-proxy at 0.1.x instead of 0.2.0",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-12T08:01:41Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "c825a5c8fb6b8a56bf93bdb4f5c1c8f260447dce",
          "body": "…xy-new-client-ei88ws\n\n# Conflicts:\n#\tpnpm-workspace.yaml",
          "is_bot": false,
          "headline": "Merge remote-tracking branch 'origin/main' into claude/integrated-pro…",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-12T07:08:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c7a0b5e760ade3d2cc2337381366f4e0cc457cfb",
          "body": "Address CodeQL findings on the PR:\n- screeps-client-proxy: only proxy http(s) backends. extract() rejects any\n  other scheme (file:, gopher:, …) so a crafted /(file:///…)/ path falls\n  through to the SPA instead of being proxied; a pinned --backend with a\n  non-web scheme now exits at startup. The t\n[…]\n  branch with an exact URL→payload lookup (no substring host matching).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_019qQwQdF6LNJwxdUG2QRYZc",
          "is_bot": false,
          "headline": "fix: harden proxy backend scheme and drop substring host check in test",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-12T06:55:46Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "4f6c0ad34bef711316c6cd930abf3edc4318681c",
          "body": "feat(client): smooth animations toggle for Room View",
          "is_bot": false,
          "headline": "Merge pull request #208 from bastianh/feat/smooth-animations",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-12T06:37:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0e60e290094d29f753c56532efb4e23e564134f8",
          "body": "…r-ad32cf\n\nfeat(client): console pause, error ordering, and regex filter",
          "is_bot": false,
          "headline": "Merge pull request #209 from bastianh/claude/console-pause-error-orde…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-12T06:36:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "897d6bd934d039a2d2c89425af4d07b1ee4ef12a",
          "body": "The overrides migration was made with pnpm 11, which ignores .npmrc's\nauto-install-peers and regenerated the lockfile with autoInstallPeers=true.\nCI runs pnpm 10, which reads .npmrc (false), so --frozen-lockfile failed\nwith ERR_PNPM_LOCKFILE_CONFIG_MISMATCH. Declare autoInstallPeers=false in\npnpm-workspace.yaml (canonical pnpm v10+ location) and regenerate the\nlockfile with pnpm 10 so both versions agree.",
          "is_bot": false,
          "headline": "fix: restore autoInstallPeers=false to unbreak pnpm 10 CI",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-12T06:32:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e9510c75946b92efd494a20d5928b967ab872ac8",
          "body": "The regex-based tag-strip (even looped to a fixed point) still trips\nCodeQL's js/incomplete-multi-character-sanitization. Replace it with an\ninert DOMParser text extraction, which removes the flagged regex sink\nentirely. The stripped text is only used for RegExp.test(), never\nrendered as HTML.",
          "is_bot": false,
          "headline": "fix(client): strip console markup via DOMParser for filter matching",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-12T06:31:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f04b8d4734b04ce64ea0f4d139a5047df98f0037",
          "body": "CodeQL flagged the single-pass regex used to strip HTML colour markup\nbefore matching the filter regex as incomplete multi-character\nsanitization (nested/malformed tags like \"<scr<script>ipt>\" can\nreassemble after one pass). The stripped text was never rendered as\nHTML (only used in RegExp.test()), so this wasn't exploitable, but\nlooping the replace to a fixed point closes the pattern CodeQL flags.\n\nCo-authored-by: Bastian Hoyer <17590+bastianh@users.noreply.github.com>",
          "is_bot": true,
          "headline": "fix(client): repeat regex tag-strip to a fixed point in log filter",
          "author_name": "claude[bot]",
          "author_login": "github-actions[bot]",
          "committed_at": "2026-07-12T06:22:49Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "e80a51ed7d37d8c32b8bcf48c26ede9d11d774cd",
          "body": "feat(client): visual editor for the Custom UI config segment",
          "is_bot": false,
          "headline": "Merge pull request #210 from bastianh/claude/scui-editor-198209",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-12T06:19:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4526471b64a795eee4c6fdda0d7f2056d0c2d20a",
          "body": "- DesktopLoginForm: the \"save credentials\" label said \"keychain\" even in\n  browser proxy mode, where credentials fall back to localStorage. Say\n  \"this browser\" when isProxy().\n- fetchServerVersion: the /api/authmod session cache keyed by hostname only.\n  Behind screeps-client-proxy every backend is\n[…]\n persistent Cache namespace in ScreepsClient. Adds a\n  regression test.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_019qQwQdF6LNJwxdUG2QRYZc",
          "is_bot": false,
          "headline": "fix: accurate credential-store label and proxy-safe authmod cache key",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-12T04:29:00Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "64b08e0b3be9504993f2b7c3c25d36b374b2a79c",
          "body": "Add a standalone `screeps-client-proxy` CLI that serves the browser client\nand forwards /api + /socket (incl. the game WebSocket) to any Screeps server,\nbypassing CORS — the steamless-client idea, for the new client.\n\n- New package screeps-client-proxy (Express + http-proxy): serves\n  dist/standalon\n[…]\n OAuth 302 returnUrl, and pinned\n--backend mode. Lint + 288 tests pass.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_019qQwQdF6LNJwxdUG2QRYZc",
          "is_bot": false,
          "headline": "feat: add integrated screeps-client-proxy with server-list login",
          "author_name": "Claude",
          "author_login": "claude",
          "committed_at": "2026-07-12T04:22:32Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "8e9bbd70dd3465c6110187b841c9f92055cb3c1a",
          "body": "Add a full-canvas editor for the Custom UI (\"SCUI\") config, opened from\nSettings → Custom UI → \"Open editor\". It edits the same segment JSON the\nclient already reads, through a structured form: sections for the map,\nroom and object-action sidebars with add/reorder/remove, per-type fields\n(button/sel\n[…]\ndeMirror) kept in sync. Saving validates against the same schema\nthe sidebar enforces (exported parseConfig), respects the 100 KB limit,\nand reloads the live config so the sidebar updates immediately.",
          "is_bot": false,
          "headline": "feat(client): visual editor for the Custom UI config segment",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-11T22:02:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "38b4198ce9b3b9aef6c0b17d4fac7a0876ab9d7e",
          "body": "- Pause button now stops the log feed: incoming messages are buffered\n  while paused and flushed on resume, instead of only pausing scroll.\n- Errors render inline in arrival order at the bottom next to the\n  surrounding log output, instead of all being pinned above logs.\n- New filter button in the Log pane sidebar reveals a regex input;\n  log/error lines not matching the pattern are hidden.",
          "is_bot": false,
          "headline": "feat(client): console pause, error ordering, and regex filter",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-11T21:43:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "46f278e26cf31e78c56b55d1d34b0b7de2b94935",
          "body": "pnpm v11 no longer reads the \"pnpm\" field in package.json. Move the\ndependency overrides (undici, js-yaml, esbuild) into pnpm-workspace.yaml\nalongside allowBuilds and drop the now-empty \"pnpm\" field, clearing the\n\"pnpm field is no longer read\" warning.",
          "is_bot": false,
          "headline": "chore: migrate pnpm overrides to pnpm-workspace.yaml",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-11T20:04:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "daee2ad1b291304fb74d14217acb258359808d7d",
          "body": "Add allowBuilds entries (@xxscreeps/pathfinder, esbuild, isolated-vm,\nivm-inspect) so pnpm can build them, and refresh the lockfile now that the\nxxscreeps peer-dependency tree of xxscreeps-mod-client is resolved. Remove\nthe local opencode.json MCP config.",
          "is_bot": false,
          "headline": "chore: allow xxscreeps native builds and drop opencode config",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-11T19:59:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a6cb0b4354322131afc97333f67699857b56e12e",
          "body": "When off, tick-driven animations (creep movement, structure fill tweens,\nbuild glows, controller flashes, say bubbles, lab/terminal cooldown pulse)\nsnap instantly instead of interpolating between ticks, reusing the renderer's\nexisting instant mode. Wall-clock ambient effects (source glow, tower sweep,\nkeeper-lair pulse) keep animating.",
          "is_bot": false,
          "headline": "feat(client): add \"Smooth animations\" toggle to Room View settings",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-11T19:58:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a37b454350acdecfb7f9e8dbe5b2f990da9fd125",
          "body": "chore: version packages",
          "is_bot": false,
          "headline": "Merge pull request #204 from bastianh/changeset-release/main",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-11T19:36:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7047dc193b217399e2eeed1ba223482192a491fb",
          "body": null,
          "is_bot": true,
          "headline": "chore: version packages",
          "author_name": "github-actions[bot]",
          "author_login": "github-actions[bot]",
          "committed_at": "2026-07-10T19:03:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "489620b63bf4aaa86fe9d2695868f921418da988",
          "body": "feat(client): memory segment editor overlay",
          "is_bot": false,
          "headline": "Merge pull request #207 from bastianh/feat/segments-panel",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-10T19:03:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9d0e3e09e5d7659c491b08446862e8b4aa4606b2",
          "body": null,
          "is_bot": false,
          "headline": "feat(client): minify JSON button in segments panel",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-10T06:44:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1b547e3cad89c76e964607475cf661b4adbf75a9",
          "body": "New Segments button in the console bar opens a full-canvas overlay (like\nthe code editor) for viewing and editing raw memory segments: segment\nlist with sizes, shard selection, CodeMirror with JSON highlighting,\nFormat JSON, and lz-string compress/decompress.",
          "is_bot": false,
          "headline": "feat(client): memory segment editor overlay",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-10T06:30:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fbd5b0015f4b4b9fb9373509bcd4b76974db0d92",
          "body": "feat(client): custom UI panels driven by a memory segment",
          "is_bot": false,
          "headline": "Merge pull request #206 from bastianh/feat/custom-ui-panel",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-09T16:51:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4c999462b31c7ae9ae9d55bff95f55f4eb5964a3",
          "body": "…ization",
          "is_bot": false,
          "headline": "fix(client): parse console lines via DOMParser instead of regex sanit…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-09T05:58:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "eb6f86464ee8e6e87741d2ec88433a2632fdf3e8",
          "body": null,
          "is_bot": false,
          "headline": "feat(client): custom UI panels driven by a memory segment",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-09T05:47:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8974cd8008abd6e5ddd730f57a3561087ae19653",
          "body": "feat(client): TypeScript editing in the code panel",
          "is_bot": false,
          "headline": "Merge pull request #205 from bastianh/feat/code-panel-typescript",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-08T13:36:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "47c34f1e95d1449b24f65b2c916e9629049336fc",
          "body": "Author Screeps modules in TypeScript with in-browser IntelliSense\n(completion, hover, diagnostics) via a lazily-loaded TS language-service\nworker. TS sources transpile to JS on save and deploy as the runnable\nmodule; the original source is kept as a hidden, inert <name>.ts sibling.\n\n- Per-module JS/TS choice and in-place Convert to TS/JS (incl. main)\n- Read-only <name>.js (generated) view of the transpiled output\n- Offline-bundled TS libs + @types/screeps (no CDN)",
          "is_bot": false,
          "headline": "feat(client): TypeScript editing in the code panel",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-08T12:05:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "36a383bee6b2621fe65b8c0850332bea3941f0b0",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'feat/code-panel-branch-file-management'",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-08T08:10:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "66f88f87d18b5932dacd85c4f3accb342b1dded7",
          "body": "- Create branches (clone selected) and set the active/run branch from the code panel\n- Live active-branch indicator via new user:setActiveBranch WS subscription\n- Add and delete modules in the module list (main protected)\n- Fix stale-response race when switching branches\n- Opt-in WebSocket gzip compression (ScreepsClientOptions.gzip, default off)",
          "is_bot": false,
          "headline": "feat: code panel branch and file management",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-08T08:09:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1f4dfc378097fba4c41ffb70e4151069b6d75308",
          "body": "chore(deps): clear Dependabot noise — stray lockfiles + transitive vuln patches",
          "is_bot": false,
          "headline": "Merge pull request #202 from bastianh/chore/dependabot-cleanup",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-08T06:09:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ed77d63c158e86b481a9e3deb61c4136e068489d",
          "body": "The merge commit captured main's lockfile before the pnpm.overrides were\nre-applied. Regenerate so undici (7.28.0), js-yaml (3.15.0 / 4.3.0), and\nesbuild (0.28.1) reflect the overrides on top of #201's version bumps.\nVerified with --frozen-lockfile.",
          "is_bot": false,
          "headline": "fix(deps): re-lock pnpm-lock.yaml with overrides after main merge",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-08T06:04:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "58568bd2bad0861b44620d75c8ad4b86a6c137a9",
          "body": "# Conflicts:\n#\tpnpm-lock.yaml",
          "is_bot": false,
          "headline": "Merge branch 'main' into chore/dependabot-cleanup",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-08T06:03:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "833213777e3dd871d0fce271492fd27b0246bb44",
          "body": "chore(deps): upgrade dev dependencies and tooling",
          "is_bot": false,
          "headline": "Merge pull request #201 from bastianh/chore/dependency-upgrades",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-08T06:01:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c45fc8d8a30ae412d548e06f3e4bf1a360f404ea",
          "body": "…nsitive vulns\n\nTwo independent cleanups for open Dependabot alerts on main. All fixes\ntarget dev-only tooling; no runtime/published code is affected.\n\nRemove stray npm lockfiles (this is a pnpm-only workspace):\n- Delete screeps-client/package-lock.json and\n  screeps-connectivity/package-lock.json. \n[…]\n       [low]\n\njs-yaml is pinned per-major so the changesets 3.x consumer keeps the\n3.x API. Lint, tests, and build all pass.\n\nNot covered here: glib (Rust/Cargo, screeps-desktop) — separate ecosystem.",
          "is_bot": false,
          "headline": "chore(deps): clear Dependabot noise — drop stray lockfiles, patch tra…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T20:45:02Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d7f514ad7949b825343ca214787a4cb4665af687",
          "body": "Bump devDependencies across the workspace, including four majors:\n\n- eslint 9.39 -> 10.6 (no config changes; flat config already in use)\n- typescript 5.9 -> 6.0\n- lucide-solid 0.513 -> 1.23 (icon exports unchanged)\n- @types/node 25 -> 26\n\nTypeScript 6 promoted the `baseUrl` deprecation to an error:\n\n[…]\nts build step\n\nAlso bumps the minor/patch batch: @tauri-apps/cli, solid-js, vitest,\n@typescript-eslint/*, typescript-eslint, globals, https-proxy-agent,\npixi.js, vite. Lint, tests, and build all pass.",
          "is_bot": false,
          "headline": "chore(deps): upgrade dev dependencies and tooling",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T20:33:03Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6abf94ba4ead8856b0019a4a3025a6164075d455",
          "body": "chore: version packages",
          "is_bot": false,
          "headline": "Merge pull request #193 from bastianh/changeset-release/main",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T20:19:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e36807c773fb97eaef5dac95a274b5543492331d",
          "body": null,
          "is_bot": true,
          "headline": "chore: version packages",
          "author_name": "github-actions[bot]",
          "author_login": "github-actions[bot]",
          "committed_at": "2026-07-07T20:16:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dd201c901d423a46cf4c38aefc633ffa74470b46",
          "body": "feat(client): read-only per-room overview page",
          "is_bot": false,
          "headline": "Merge pull request #199 from bastianh/feat/room-overview-page",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T20:15:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1ed0906c79e836f4d5b2aec826bc4823093ccd04",
          "body": "# Conflicts:\n#\tscreeps-client/src/components/Overview.tsx\n#\tscreeps-client/src/stores/routeStore.ts",
          "is_bot": false,
          "headline": "Merge remote-tracking branch 'origin/main' into feat/room-overview-page",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T20:13:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "eca582ca5080958135fbd5e90ea054ae5544cb38",
          "body": "feat(client): pre-fill market target room from the room you opened it…",
          "is_bot": false,
          "headline": "Merge pull request #200 from bastianh/feat/market-origin-room",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T20:10:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5573a4e63afe3282403646715208334f956e3404",
          "body": "fix(flags): forward shard on remove-flag and change-flag-color",
          "is_bot": false,
          "headline": "Merge pull request #198 from bastianh/fix/flag-actions-shard",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T20:03:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5d46b8ec68e56f47aa4f7557fe297a90e8987b09",
          "body": "removeFlag and changeFlagColor were the only room-scoped game endpoints\nthat never sent a shard, so on multi-shard servers the API rejected them\nwith \"invalid shard\". Both now accept and forward the current shard,\nmatching createFlag and the other endpoints.",
          "is_bot": false,
          "headline": "fix(flags): forward shard on remove-flag and change-flag-color",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T19:59:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "79bd3d0cbcd329b621c537b3d481be5d1e05a29c",
          "body": "Add /room-overview/<shard>/<room> showing owner, stat tiles, and a\nhistory graph. Reachable from a chart button on the Overview/Profile\nroom tiles and the in-game room toolbar. Types the connectivity\nroomOverview endpoint with the new ApiRoomOverviewResponse.",
          "is_bot": false,
          "headline": "feat(client): read-only per-room overview page",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T19:51:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d136a156627af22114a83747c13d2c025bc1ce75",
          "body": null,
          "is_bot": false,
          "headline": "fix(client): switch to the correct room when clicked in Overview (#196)",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T19:21:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7d5747ce35995a993884706761d67aab7b609f76",
          "body": "… from (#197)",
          "is_bot": false,
          "headline": "feat(client): pre-fill market target room from the room you opened it…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T19:20:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "09ed9715f587bc2a32d0c612c404c4378de63fa2",
          "body": "… from",
          "is_bot": false,
          "headline": "feat(client): pre-fill market target room from the room you opened it…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T19:18:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "101394cda272006634fd7d7c0f1250a132d58134",
          "body": "…links (#195)\n\nMove the Messages view out of the User hub to its own /messages route and\nadd /messages/<username> deep links that open the conversation with a\nspecific player. Add a Message button to other players' profile pages\n(messaging-capable servers) that opens the conversation with a send box.",
          "is_bot": false,
          "headline": "feat(client): top-level /messages route + per-user conversation deep …",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T02:55:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3b9b95154665101e5882c75e95e325c0b43a0458",
          "body": "* feat(client): give User Messages view its own /user/messages route\n\nMake the Messages, Power Creeps, and Overview sub-views mutually\nexclusive by driving them all off the URL-backed userView state instead\nof a local showMessages signal. Add a /user/messages route and a\ngoToUserMessages navigator s\n[…]\nile (via UserLink). On a public profile that is the logged-in player's own\naccount, an 'Overview' link next to the name jumps to their private overview.\n\n* chore: add changeset for profile page revamp",
          "is_bot": false,
          "headline": "Revamp public profile page + user/overview cross-links (#194)",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T02:40:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "851580deb1132a561aaac781f037bf635b2f7c21",
          "body": "…192)\n\nMake the Messages, Power Creeps, and Overview sub-views mutually\nexclusive by driving them all off the URL-backed userView state instead\nof a local showMessages signal. Add a /user/messages route and a\ngoToUserMessages navigator so the inbox is deep-linkable and works with\nbrowser back/forward; switching to Power now deactivates the Messages\nbutton and vice-versa.",
          "is_bot": false,
          "headline": "feat(client): give User Messages view its own /user/messages route (#…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T02:35:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "57a7e1dddbadefe3b634e90db388768a3125557d",
          "body": "Add hasOfficialLike() capability helper to screeps-connectivity that\ndetects the official-like feature from /api/version. Both login screens\nuse it to hide the connection password field on xxscreeps servers, where\nthe screepsmod-auth server password does not apply.",
          "is_bot": false,
          "headline": "feat(client): hide server password field for xxscreeps servers (#191)",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-07T02:35:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bb15a51c266ae28921bb7be1b3c90355f25e2f59",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore: version packages (#186)",
          "author_name": "github-actions[bot]",
          "author_login": "github-actions[bot]",
          "committed_at": "2026-07-06T08:09:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9bc39f87778a68af99924d360366b2f061a6179f",
          "body": "… skip (#190)",
          "is_bot": false,
          "headline": "fix(client): history viewer terrain, no-data handling, playback chunk…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-06T07:39:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "96de46b0d3d489aa5f85a3fbfaf95d1cd2098984",
          "body": "…pport (#188)",
          "is_bot": false,
          "headline": "feat(client): move room history button to top-left, gate on server su…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-06T06:13:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "76902c0e1c4ace0ff5b5d1ecea2ef5f0f58a624f",
          "body": "The renderer drew every say bubble regardless of the actionLog `isPublic`\nflag, so private sayings could leak to other players on servers that don't\nfilter them server-side. Show a saying only when `isPublic` is true or the\ncreep belongs to the logged-in user.",
          "is_bot": false,
          "headline": "fix(client): only show non-public sayings to the creep owner (#187)",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-06T06:12:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1e85697138402e67a4341ffced5d085bfbc6099a",
          "body": "…s (#189)\n\n* fix(connectivity): accept xxscreeps 'actually, it was fine' as success\n\n* docs: correct scope of xxscreeps false-error sentinel to create-construction",
          "is_bot": false,
          "headline": "fix(connectivity): accept xxscreeps 'actually, it was fine' as succes…",
          "author_name": "Bastian Hoyer",
          "author_login": "bastianh",
          "committed_at": "2026-07-06T06:12:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 100,
      "commits_last_year": 440,
      "latest_release_at": "2026-07-19T14:13:30Z",
      "latest_release_tag": "screepsmod-client-new@0.2.25",
      "releases_from_tags": false,
      "days_since_last_push": 5,
      "active_weeks_last_year": 11,
      "days_since_latest_release": 5,
      "mean_days_between_releases": 0.8
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": false,
      "has_contributing": false,
      "health_percentage": 28,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "screeps-client",
          "exists": true,
          "license": "ISC",
          "keywords": [],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/screeps-client",
          "is_deprecated": false,
          "latest_version": "0.18.0",
          "repository_url": "https://github.com/bastianh/screeps-client",
          "versions_count": 35,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 3104,
          "first_published_at": "2026-05-22T05:54:30.835000Z",
          "latest_published_at": "2026-07-19T14:13:16.570000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 5
        },
        {
          "name": "screepsmod-client-new",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/screepsmod-client-new",
          "is_deprecated": false,
          "latest_version": "0.2.25",
          "repository_url": "https://github.com/bastianh/screeps-client",
          "versions_count": 28,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 2199,
          "first_published_at": "2026-05-20T15:52:41.936000Z",
          "latest_published_at": "2026-07-19T14:12:30.050000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 5
        },
        {
          "name": "screeps-client-proxy",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/screeps-client-proxy",
          "is_deprecated": false,
          "latest_version": "0.1.3",
          "repository_url": "https://github.com/bastianh/screeps-client",
          "versions_count": 3,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 213,
          "first_published_at": "2026-07-12T08:19:45.503000Z",
          "latest_published_at": "2026-07-19T14:12:30.031000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 5
        },
        {
          "name": "screeps-connectivity",
          "exists": true,
          "license": "ISC",
          "keywords": [],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/screeps-connectivity",
          "is_deprecated": false,
          "latest_version": "0.16.0",
          "repository_url": "https://github.com/bastianh/screeps-client",
          "versions_count": 24,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 2403,
          "first_published_at": "2026-05-22T05:54:29.335000Z",
          "latest_published_at": "2026-07-19T14:12:30.026000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 5
        },
        {
          "name": "xxscreeps-mod-client",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/xxscreeps-mod-client",
          "is_deprecated": false,
          "latest_version": "0.3.8",
          "repository_url": "https://github.com/bastianh/screeps-client",
          "versions_count": 30,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 2622,
          "first_published_at": "2026-05-21T18:59:36.679000Z",
          "latest_published_at": "2026-07-19T14:12:30.005000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 5
        }
      ]
    },
    "popularity": {
      "forks": 3,
      "stars": 3,
      "watchers": 1,
      "fork_history": {
        "days": [
          {
            "date": "2026-05-25",
            "count": 1
          },
          {
            "date": "2026-06-20",
            "count": 1
          },
          {
            "date": "2026-07-10",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 3,
        "total_forks": 3
      },
      "star_history": null,
      "open_issues_and_prs": 1
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": true,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "screeps-client/tsconfig.json",
        "screeps-connectivity/tsconfig.json"
      ],
      "toolchain_manifests": [
        "screeps-desktop/src-tauri/Cargo.toml"
      ],
      "largest_source_bytes": 79415,
      "source_files_sampled": 253,
      "oversized_source_files": 1,
      "agent_instruction_files": [
        "AGENTS.md",
        "CLAUDE.md"
      ],
      "agent_instruction_max_bytes": 2657
    },
    "dependencies": {
      "manifests": [
        "package.json",
        "screeps-client-proxy/package.json",
        "screeps-client/package.json",
        "screeps-connectivity/package.json",
        "screeps-desktop/package.json",
        "screeps-mod-client/package.json",
        "xxscreeps-mod-client/package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.6",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3jxr-9vmj-r5cp",
              "GHSA-mh99-v99m-4gvg"
            ],
            "fixed_version": "5.0.8",
            "advisory_count": 2,
            "oldest_advisory_days": 4
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.16",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-r28c-9q8g-f849"
            ],
            "fixed_version": "8.5.18",
            "advisory_count": 1,
            "oldest_advisory_days": 0
          },
          {
            "name": "quick-xml",
            "direct": false,
            "version": "0.39.4",
            "severity": "high",
            "ecosystem": "crates",
            "cvss_score": 7.5,
            "advisory_ids": [
              "RUSTSEC-2026-0194",
              "RUSTSEC-2026-0195"
            ],
            "fixed_version": "0.41.0",
            "advisory_count": 2,
            "oldest_advisory_days": 26
          },
          {
            "name": "glib",
            "direct": false,
            "version": "0.18.5",
            "severity": "moderate",
            "ecosystem": "crates",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-wrw7-89jp-8q8g",
              "RUSTSEC-2024-0429"
            ],
            "fixed_version": "0.20.0",
            "advisory_count": 2,
            "oldest_advisory_days": 847
          },
          {
            "name": "@babel/core",
            "direct": false,
            "version": "7.29.0",
            "severity": "low",
            "ecosystem": "npm",
            "cvss_score": 3.2,
            "advisory_ids": [
              "GHSA-4x5r-pxfx-6jf8"
            ],
            "fixed_version": "8.0.0-rc.6",
            "advisory_count": 1,
            "oldest_advisory_days": 39
          },
          {
            "name": "atk",
            "direct": false,
            "version": "0.18.2",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2024-0413"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 873
          },
          {
            "name": "atk-sys",
            "direct": false,
            "version": "0.18.2",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2024-0416"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 873
          },
          {
            "name": "gdk",
            "direct": false,
            "version": "0.18.2",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2024-0412"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 873
          },
          {
            "name": "gdk-sys",
            "direct": false,
            "version": "0.18.2",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2024-0418"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 873
          },
          {
            "name": "gdkwayland-sys",
            "direct": false,
            "version": "0.18.2",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2024-0411"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 873
          },
          {
            "name": "gdkx11",
            "direct": false,
            "version": "0.18.2",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2024-0417"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 873
          },
          {
            "name": "gdkx11-sys",
            "direct": false,
            "version": "0.18.2",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2024-0414"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 873
          },
          {
            "name": "gtk",
            "direct": false,
            "version": "0.18.2",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2024-0415"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 873
          },
          {
            "name": "gtk-sys",
            "direct": false,
            "version": "0.18.2",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2024-0420"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 873
          },
          {
            "name": "gtk3-macros",
            "direct": false,
            "version": "0.18.2",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2024-0419"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 873
          },
          {
            "name": "proc-macro-error",
            "direct": false,
            "version": "1.0.4",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2024-0370"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 692
          },
          {
            "name": "unic-char-property",
            "direct": false,
            "version": "0.9.0",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2025-0081"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 280
          },
          {
            "name": "unic-char-range",
            "direct": false,
            "version": "0.9.0",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2025-0075"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 280
          },
          {
            "name": "unic-common",
            "direct": false,
            "version": "0.9.0",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2025-0080"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 280
          },
          {
            "name": "unic-ucd-ident",
            "direct": false,
            "version": "0.9.0",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2025-0100"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 280
          },
          {
            "name": "unic-ucd-version",
            "direct": false,
            "version": "0.9.0",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2025-0098"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 280
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "low": 1,
          "high": 3,
          "unknown": 16,
          "moderate": 1
        },
        "advisory_count": 24,
        "affected_count": 21,
        "assessed_count": 1127,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 43,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "npm"
      ],
      "dependencies": [
        {
          "name": "argparse",
          "manifest": "screeps-client-proxy/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.1"
        },
        {
          "name": "express",
          "manifest": "screeps-client-proxy/package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.21.2"
        },
        {
          "name": "http-proxy",
          "manifest": "screeps-client-proxy/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.18.1"
        },
        {
          "name": "screeps-client",
          "manifest": "screeps-client-proxy/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "screeps-client",
          "manifest": "screeps-mod-client/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "screeps-client",
          "manifest": "xxscreeps-mod-client/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "argparse",
            "direct": true,
            "version": "1.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": true,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": true,
            "version": "^2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "express",
            "direct": true,
            "version": "4.22.2",
            "ecosystem": "npm"
          },
          {
            "name": "express",
            "direct": true,
            "version": "^4.21.2",
            "ecosystem": "npm"
          },
          {
            "name": "http-proxy",
            "direct": true,
            "version": "1.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "http-proxy",
            "direct": true,
            "version": "^1.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "adler2",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "aho-corasick",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "alloc-no-stdlib",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "crates"
          },
          {
            "name": "alloc-stdlib",
            "direct": false,
            "version": "0.2.4",
            "ecosystem": "crates"
          },
          {
            "name": "android_system_properties",
            "direct": false,
            "version": "0.1.5",
            "ecosystem": "crates"
          },
          {
            "name": "anyhow",
            "direct": false,
            "version": "1.0.103",
            "ecosystem": "crates"
          },
          {
            "name": "async-broadcast",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "crates"
          },
          {
            "name": "async-channel",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-executor",
            "direct": false,
            "version": "1.14.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-io",
            "direct": false,
            "version": "2.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-lock",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "async-process",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-recursion",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "async-signal",
            "direct": false,
            "version": "0.2.14",
            "ecosystem": "crates"
          },
          {
            "name": "async-task",
            "direct": false,
            "version": "4.7.1",
            "ecosystem": "crates"
          },
          {
            "name": "async-trait",
            "direct": false,
            "version": "0.1.89",
            "ecosystem": "crates"
          },
          {
            "name": "atk",
            "direct": false,
            "version": "0.18.2",
            "ecosystem": "crates"
          },
          {
            "name": "atk-sys",
            "direct": false,
            "version": "0.18.2",
            "ecosystem": "crates"
          },
          {
            "name": "atomic-waker",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "autocfg",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "base64",
            "direct": false,
            "version": "0.21.7",
            "ecosystem": "crates"
          },
          {
            "name": "base64",
            "direct": false,
            "version": "0.22.1",
            "ecosystem": "crates"
          },
          {
            "name": "bit-set",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "crates"
          },
          {
            "name": "bit-vec",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "crates"
          },
          {
            "name": "bitflags",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "bitflags",
            "direct": false,
            "version": "2.13.0",
            "ecosystem": "crates"
          },
          {
            "name": "block-buffer",
            "direct": false,
            "version": "0.10.4",
            "ecosystem": "crates"
          },
          {
            "name": "block2",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "crates"
          },
          {
            "name": "blocking",
            "direct": false,
            "version": "1.6.2",
            "ecosystem": "crates"
          },
          {
            "name": "brotli",
            "direct": false,
            "version": "8.0.4",
            "ecosystem": "crates"
          },
          {
            "name": "brotli-decompressor",
            "direct": false,
            "version": "5.0.3",
            "ecosystem": "crates"
          },
          {
            "name": "bs58",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "bumpalo",
            "direct": false,
            "version": "3.20.3",
            "ecosystem": "crates"
          },
          {
            "name": "bytemuck",
            "direct": false,
            "version": "1.25.0",
            "ecosystem": "crates"
          },
          {
            "name": "byteorder",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "bytes",
            "direct": false,
            "version": "1.12.0",
            "ecosystem": "crates"
          },
          {
            "name": "cairo-rs",
            "direct": false,
            "version": "0.18.5",
            "ecosystem": "crates"
          },
          {
            "name": "cairo-sys-rs",
            "direct": false,
            "version": "0.18.2",
            "ecosystem": "crates"
          },
          {
            "name": "camino",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "crates"
          },
          {
            "name": "cargo-platform",
            "direct": false,
            "version": "0.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "cargo_metadata",
            "direct": false,
            "version": "0.19.2",
            "ecosystem": "crates"
          },
          {
            "name": "cargo_toml",
            "direct": false,
            "version": "0.22.3",
            "ecosystem": "crates"
          },
          {
            "name": "cc",
            "direct": false,
            "version": "1.2.65",
            "ecosystem": "crates"
          },
          {
            "name": "cesu8",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "cfb",
            "direct": false,
            "version": "0.7.3",
            "ecosystem": "crates"
          },
          {
            "name": "cfg-expr",
            "direct": false,
            "version": "0.15.8",
            "ecosystem": "crates"
          },
          {
            "name": "cfg-if",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "crates"
          },
          {
            "name": "cfg_aliases",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "chrono",
            "direct": false,
            "version": "0.4.45",
            "ecosystem": "crates"
          },
          {
            "name": "combine",
            "direct": false,
            "version": "4.6.7",
            "ecosystem": "crates"
          },
          {
            "name": "concurrent-queue",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "cookie",
            "direct": false,
            "version": "0.18.1",
            "ecosystem": "crates"
          },
          {
            "name": "cookie_store",
            "direct": false,
            "version": "0.22.1",
            "ecosystem": "crates"
          },
          {
            "name": "core-foundation",
            "direct": false,
            "version": "0.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "core-foundation",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "crates"
          },
          {
            "name": "core-foundation-sys",
            "direct": false,
            "version": "0.8.7",
            "ecosystem": "crates"
          },
          {
            "name": "core-graphics",
            "direct": false,
            "version": "0.25.0",
            "ecosystem": "crates"
          },
          {
            "name": "core-graphics-types",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "cpufeatures",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "crates"
          },
          {
            "name": "crc32fast",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "crossbeam-channel",
            "direct": false,
            "version": "0.5.15",
            "ecosystem": "crates"
          },
          {
            "name": "crossbeam-utils",
            "direct": false,
            "version": "0.8.21",
            "ecosystem": "crates"
          },
          {
            "name": "crypto-common",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "crates"
          },
          {
            "name": "cssparser",
            "direct": false,
            "version": "0.36.0",
            "ecosystem": "crates"
          },
          {
            "name": "cssparser-macros",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "ctor",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "crates"
          },
          {
            "name": "ctor-proc-macro",
            "direct": false,
            "version": "0.0.7",
            "ecosystem": "crates"
          },
          {
            "name": "darling",
            "direct": false,
            "version": "0.23.0",
            "ecosystem": "crates"
          },
          {
            "name": "darling_core",
            "direct": false,
            "version": "0.23.0",
            "ecosystem": "crates"
          },
          {
            "name": "darling_macro",
            "direct": false,
            "version": "0.23.0",
            "ecosystem": "crates"
          },
          {
            "name": "data-url",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "dbus",
            "direct": false,
            "version": "0.9.11",
            "ecosystem": "crates"
          },
          {
            "name": "dbus-secret-service",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "deranged",
            "direct": false,
            "version": "0.5.8",
            "ecosystem": "crates"
          },
          {
            "name": "derive_more",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "derive_more-impl",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "digest",
            "direct": false,
            "version": "0.10.7",
            "ecosystem": "crates"
          },
          {
            "name": "dirs",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "dirs-sys",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "dispatch2",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "crates"
          },
          {
            "name": "displaydoc",
            "direct": false,
            "version": "0.2.6",
            "ecosystem": "crates"
          },
          {
            "name": "dlopen2",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "crates"
          },
          {
            "name": "dlopen2_derive",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "crates"
          },
          {
            "name": "document-features",
            "direct": false,
            "version": "0.2.12",
            "ecosystem": "crates"
          },
          {
            "name": "dom_query",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "crates"
          },
          {
            "name": "dpi",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "dtoa",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "crates"
          },
          {
            "name": "dtoa-short",
            "direct": false,
            "version": "0.3.5",
            "ecosystem": "crates"
          },
          {
            "name": "dtor",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "dtor-proc-macro",
            "direct": false,
            "version": "0.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "dunce",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "crates"
          },
          {
            "name": "dyn-clone",
            "direct": false,
            "version": "1.0.20",
            "ecosystem": "crates"
          },
          {
            "name": "embed-resource",
            "direct": false,
            "version": "3.0.9",
            "ecosystem": "crates"
          },
          {
            "name": "embed_plist",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "encoding_rs",
            "direct": false,
            "version": "0.8.35",
            "ecosystem": "crates"
          },
          {
            "name": "endi",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "enumflags2",
            "direct": false,
            "version": "0.7.12",
            "ecosystem": "crates"
          },
          {
            "name": "enumflags2_derive",
            "direct": false,
            "version": "0.7.12",
            "ecosystem": "crates"
          },
          {
            "name": "equivalent",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "erased-serde",
            "direct": false,
            "version": "0.4.10",
            "ecosystem": "crates"
          },
          {
            "name": "errno",
            "direct": false,
            "version": "0.3.14",
            "ecosystem": "crates"
          },
          {
            "name": "event-listener",
            "direct": false,
            "version": "5.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "event-listener-strategy",
            "direct": false,
            "version": "0.5.4",
            "ecosystem": "crates"
          },
          {
            "name": "fastrand",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "fdeflate",
            "direct": false,
            "version": "0.3.7",
            "ecosystem": "crates"
          },
          {
            "name": "field-offset",
            "direct": false,
            "version": "0.3.6",
            "ecosystem": "crates"
          },
          {
            "name": "find-msvc-tools",
            "direct": false,
            "version": "0.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "flate2",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "fnv",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "crates"
          },
          {
            "name": "foldhash",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "foreign-types",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "foreign-types-macros",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "crates"
          },
          {
            "name": "foreign-types-shared",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "crates"
          },
          {
            "name": "form_urlencoded",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "futures-channel",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-core",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-executor",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-io",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-lite",
            "direct": false,
            "version": "2.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "futures-macro",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-sink",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-task",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-util",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "gdk",
            "direct": false,
            "version": "0.18.2",
            "ecosystem": "crates"
          },
          {
            "name": "gdk-pixbuf",
            "direct": false,
            "version": "0.18.5",
            "ecosystem": "crates"
          },
          {
            "name": "gdk-pixbuf-sys",
            "direct": false,
            "version": "0.18.0",
            "ecosystem": "crates"
          },
          {
            "name": "gdk-sys",
            "direct": false,
            "version": "0.18.2",
            "ecosystem": "crates"
          },
          {
            "name": "gdkwayland-sys",
            "direct": false,
            "version": "0.18.2",
            "ecosystem": "crates"
          },
          {
            "name": "gdkx11",
            "direct": false,
            "version": "0.18.2",
            "ecosystem": "crates"
          },
          {
            "name": "gdkx11-sys",
            "direct": false,
            "version": "0.18.2",
            "ecosystem": "crates"
          },
          {
            "name": "generic-array",
            "direct": false,
            "version": "0.14.7",
            "ecosystem": "crates"
          },
          {
            "name": "getrandom",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "crates"
          },
          {
            "name": "getrandom",
            "direct": false,
            "version": "0.3.4",
            "ecosystem": "crates"
          },
          {
            "name": "getrandom",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "crates"
          },
          {
            "name": "gio",
            "direct": false,
            "version": "0.18.4",
            "ecosystem": "crates"
          },
          {
            "name": "gio-sys",
            "direct": false,
            "version": "0.18.1",
            "ecosystem": "crates"
          },
          {
            "name": "glib",
            "direct": false,
            "version": "0.18.5",
            "ecosystem": "crates"
          },
          {
            "name": "glib-macros",
            "direct": false,
            "version": "0.18.5",
            "ecosystem": "crates"
          },
          {
            "name": "glib-sys",
            "direct": false,
            "version": "0.18.1",
            "ecosystem": "crates"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "0.3.3",
            "ecosystem": "crates"
          },
          {
            "name": "gobject-sys",
            "direct": false,
            "version": "0.18.0",
            "ecosystem": "crates"
          },
          {
            "name": "gtk",
            "direct": false,
            "version": "0.18.2",
            "ecosystem": "crates"
          },
          {
            "name": "gtk-sys",
            "direct": false,
            "version": "0.18.2",
            "ecosystem": "crates"
          },
          {
            "name": "gtk3-macros",
            "direct": false,
            "version": "0.18.2",
            "ecosystem": "crates"
          },
          {
            "name": "h2",
            "direct": false,
            "version": "0.4.15",
            "ecosystem": "crates"
          },
          {
            "name": "hashbrown",
            "direct": false,
            "version": "0.12.3",
            "ecosystem": "crates"
          },
          {
            "name": "hashbrown",
            "direct": false,
            "version": "0.17.1",
            "ecosystem": "crates"
          },
          {
            "name": "heck",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "heck",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "hermit-abi",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "crates"
          },
          {
            "name": "hex",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "crates"
          },
          {
            "name": "html5ever",
            "direct": false,
            "version": "0.38.0",
            "ecosystem": "crates"
          },
          {
            "name": "http",
            "direct": false,
            "version": "1.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "http-body",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "http-body-util",
            "direct": false,
            "version": "0.1.3",
            "ecosystem": "crates"
          },
          {
            "name": "httparse",
            "direct": false,
            "version": "1.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "hyper",
            "direct": false,
            "version": "1.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "hyper-rustls",
            "direct": false,
            "version": "0.27.9",
            "ecosystem": "crates"
          },
          {
            "name": "hyper-util",
            "direct": false,
            "version": "0.1.20",
            "ecosystem": "crates"
          },
          {
            "name": "iana-time-zone",
            "direct": false,
            "version": "0.1.65",
            "ecosystem": "crates"
          },
          {
            "name": "iana-time-zone-haiku",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "ico",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_collections",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_locale_core",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_normalizer",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_normalizer_data",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_properties",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_properties_data",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "icu_provider",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "ident_case",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "idna",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "idna_adapter",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "indexmap",
            "direct": false,
            "version": "1.9.3",
            "ecosystem": "crates"
          },
          {
            "name": "indexmap",
            "direct": false,
            "version": "2.14.0",
            "ecosystem": "crates"
          },
          {
            "name": "infer",
            "direct": false,
            "version": "0.19.0",
            "ecosystem": "crates"
          },
          {
            "name": "ipnet",
            "direct": false,
            "version": "2.12.0",
            "ecosystem": "crates"
          },
          {
            "name": "is-docker",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "is-wsl",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "itoa",
            "direct": false,
            "version": "1.0.18",
            "ecosystem": "crates"
          },
          {
            "name": "javascriptcore-rs",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "javascriptcore-rs-sys",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "jni",
            "direct": false,
            "version": "0.21.1",
            "ecosystem": "crates"
          },
          {
            "name": "jni-sys",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "crates"
          },
          {
            "name": "jni-sys",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "jni-sys-macros",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "js-sys",
            "direct": false,
            "version": "0.3.103",
            "ecosystem": "crates"
          },
          {
            "name": "json-patch",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "jsonptr",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "keyboard-types",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "keyring",
            "direct": false,
            "version": "3.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "libappindicator",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "libappindicator-sys",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "libc",
            "direct": false,
            "version": "0.2.186",
            "ecosystem": "crates"
          },
          {
            "name": "libdbus-sys",
            "direct": false,
            "version": "0.2.7",
            "ecosystem": "crates"
          },
          {
            "name": "libloading",
            "direct": false,
            "version": "0.7.4",
            "ecosystem": "crates"
          },
          {
            "name": "libredox",
            "direct": false,
            "version": "0.1.17",
            "ecosystem": "crates"
          },
          {
            "name": "linux-raw-sys",
            "direct": false,
            "version": "0.12.1",
            "ecosystem": "crates"
          },
          {
            "name": "litemap",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "crates"
          },
          {
            "name": "litrs",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "lock_api",
            "direct": false,
            "version": "0.4.14",
            "ecosystem": "crates"
          },
          {
            "name": "log",
            "direct": false,
            "version": "0.4.33",
            "ecosystem": "crates"
          },
          {
            "name": "lru-slab",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "markup5ever",
            "direct": false,
            "version": "0.38.0",
            "ecosystem": "crates"
          },
          {
            "name": "memchr",
            "direct": false,
            "version": "2.8.2",
            "ecosystem": "crates"
          },
          {
            "name": "memoffset",
            "direct": false,
            "version": "0.9.1",
            "ecosystem": "crates"
          },
          {
            "name": "mime",
            "direct": false,
            "version": "0.3.17",
            "ecosystem": "crates"
          },
          {
            "name": "miniz_oxide",
            "direct": false,
            "version": "0.8.9",
            "ecosystem": "crates"
          },
          {
            "name": "mio",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "muda",
            "direct": false,
            "version": "0.19.3",
            "ecosystem": "crates"
          },
          {
            "name": "ndk",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "ndk-sys",
            "direct": false,
            "version": "0.6.0+11769913",
            "ecosystem": "crates"
          },
          {
            "name": "new_debug_unreachable",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "num-conv",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "num-traits",
            "direct": false,
            "version": "0.2.19",
            "ecosystem": "crates"
          },
          {
            "name": "num_enum",
            "direct": false,
            "version": "0.7.6",
            "ecosystem": "crates"
          },
          {
            "name": "num_enum_derive",
            "direct": false,
            "version": "0.7.6",
            "ecosystem": "crates"
          },
          {
            "name": "objc2",
            "direct": false,
            "version": "0.6.4",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-app-kit",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-cloud-kit",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-core-data",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-core-foundation",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-core-graphics",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-core-image",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-core-location",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-core-text",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-encode",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-exception-helper",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-foundation",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-io-surface",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-quartz-core",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-ui-kit",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-user-notifications",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "objc2-web-kit",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "once_cell",
            "direct": false,
            "version": "1.21.4",
            "ecosystem": "crates"
          },
          {
            "name": "open",
            "direct": false,
            "version": "5.3.6",
            "ecosystem": "crates"
          },
          {
            "name": "option-ext",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "ordered-stream",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "pango",
            "direct": false,
            "version": "0.18.3",
            "ecosystem": "crates"
          },
          {
            "name": "pango-sys",
            "direct": false,
            "version": "0.18.0",
            "ecosystem": "crates"
          },
          {
            "name": "parking",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "parking_lot",
            "direct": false,
            "version": "0.12.5",
            "ecosystem": "crates"
          },
          {
            "name": "parking_lot_core",
            "direct": false,
            "version": "0.9.12",
            "ecosystem": "crates"
          },
          {
            "name": "percent-encoding",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "phf",
            "direct": false,
            "version": "0.13.1",
            "ecosystem": "crates"
          },
          {
            "name": "phf_codegen",
            "direct": false,
            "version": "0.13.1",
            "ecosystem": "crates"
          },
          {
            "name": "phf_generator",
            "direct": false,
            "version": "0.13.1",
            "ecosystem": "crates"
          },
          {
            "name": "phf_macros",
            "direct": false,
            "version": "0.13.1",
            "ecosystem": "crates"
          },
          {
            "name": "phf_shared",
            "direct": false,
            "version": "0.13.1",
            "ecosystem": "crates"
          },
          {
            "name": "pin-project-lite",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "crates"
          },
          {
            "name": "piper",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "crates"
          },
          {
            "name": "pkg-config",
            "direct": false,
            "version": "0.3.33",
            "ecosystem": "crates"
          },
          {
            "name": "plist",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "png",
            "direct": false,
            "version": "0.17.16",
            "ecosystem": "crates"
          },
          {
            "name": "png",
            "direct": false,
            "version": "0.18.1",
            "ecosystem": "crates"
          },
          {
            "name": "polling",
            "direct": false,
            "version": "3.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "potential_utf",
            "direct": false,
            "version": "0.1.5",
            "ecosystem": "crates"
          },
          {
            "name": "powerfmt",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "ppv-lite86",
            "direct": false,
            "version": "0.2.21",
            "ecosystem": "crates"
          },
          {
            "name": "precomputed-hash",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "proc-macro-crate",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "crates"
          },
          {
            "name": "proc-macro-crate",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "proc-macro-crate",
            "direct": false,
            "version": "3.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "proc-macro-error",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "crates"
          },
          {
            "name": "proc-macro-error-attr",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "crates"
          },
          {
            "name": "proc-macro2",
            "direct": false,
            "version": "1.0.106",
            "ecosystem": "crates"
          },
          {
            "name": "psl-types",
            "direct": false,
            "version": "2.0.11",
            "ecosystem": "crates"
          },
          {
            "name": "publicsuffix",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "quick-xml",
            "direct": false,
            "version": "0.39.4",
            "ecosystem": "crates"
          },
          {
            "name": "quinn",
            "direct": false,
            "version": "0.11.11",
            "ecosystem": "crates"
          },
          {
            "name": "quinn-proto",
            "direct": false,
            "version": "0.11.15",
            "ecosystem": "crates"
          },
          {
            "name": "quinn-udp",
            "direct": false,
            "version": "0.5.14",
            "ecosystem": "crates"
          },
          {
            "name": "quote",
            "direct": false,
            "version": "1.0.46",
            "ecosystem": "crates"
          },
          {
            "name": "r-efi",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "r-efi",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "rand",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "crates"
          },
          {
            "name": "rand_chacha",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "rand_core",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "crates"
          },
          {
            "name": "raw-window-handle",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "crates"
          },
          {
            "name": "redox_syscall",
            "direct": false,
            "version": "0.5.18",
            "ecosystem": "crates"
          },
          {
            "name": "redox_users",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "crates"
          },
          {
            "name": "ref-cast",
            "direct": false,
            "version": "1.0.25",
            "ecosystem": "crates"
          },
          {
            "name": "ref-cast-impl",
            "direct": false,
            "version": "1.0.25",
            "ecosystem": "crates"
          },
          {
            "name": "regex",
            "direct": false,
            "version": "1.12.4",
            "ecosystem": "crates"
          },
          {
            "name": "regex-automata",
            "direct": false,
            "version": "0.4.14",
            "ecosystem": "crates"
          },
          {
            "name": "regex-syntax",
            "direct": false,
            "version": "0.8.11",
            "ecosystem": "crates"
          },
          {
            "name": "reqwest",
            "direct": false,
            "version": "0.12.28",
            "ecosystem": "crates"
          },
          {
            "name": "reqwest",
            "direct": false,
            "version": "0.13.4",
            "ecosystem": "crates"
          },
          {
            "name": "ring",
            "direct": false,
            "version": "0.17.14",
            "ecosystem": "crates"
          },
          {
            "name": "rustc-hash",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "rustc_version",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "rustix",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "rustls",
            "direct": false,
            "version": "0.23.41",
            "ecosystem": "crates"
          },
          {
            "name": "rustls-pki-types",
            "direct": false,
            "version": "1.14.1",
            "ecosystem": "crates"
          },
          {
            "name": "rustls-webpki",
            "direct": false,
            "version": "0.103.13",
            "ecosystem": "crates"
          },
          {
            "name": "rustversion",
            "direct": false,
            "version": "1.0.22",
            "ecosystem": "crates"
          },
          {
            "name": "ryu",
            "direct": false,
            "version": "1.0.23",
            "ecosystem": "crates"
          },
          {
            "name": "same-file",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "schemars",
            "direct": false,
            "version": "0.8.22",
            "ecosystem": "crates"
          },
          {
            "name": "schemars",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "schemars",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "schemars_derive",
            "direct": false,
            "version": "0.8.22",
            "ecosystem": "crates"
          },
          {
            "name": "scopeguard",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "security-framework",
            "direct": false,
            "version": "2.11.1",
            "ecosystem": "crates"
          },
          {
            "name": "security-framework",
            "direct": false,
            "version": "3.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "security-framework-sys",
            "direct": false,
            "version": "2.17.0",
            "ecosystem": "crates"
          },
          {
            "name": "selectors",
            "direct": false,
            "version": "0.36.1",
            "ecosystem": "crates"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "1.0.28",
            "ecosystem": "crates"
          },
          {
            "name": "serde",
            "direct": false,
            "version": "1.0.228",
            "ecosystem": "crates"
          },
          {
            "name": "serde-untagged",
            "direct": false,
            "version": "0.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "serde_core",
            "direct": false,
            "version": "1.0.228",
            "ecosystem": "crates"
          },
          {
            "name": "serde_derive",
            "direct": false,
            "version": "1.0.228",
            "ecosystem": "crates"
          },
          {
            "name": "serde_derive_internals",
            "direct": false,
            "version": "0.29.1",
            "ecosystem": "crates"
          },
          {
            "name": "serde_json",
            "direct": false,
            "version": "1.0.150",
            "ecosystem": "crates"
          },
          {
            "name": "serde_repr",
            "direct": false,
            "version": "0.1.20",
            "ecosystem": "crates"
          },
          {
            "name": "serde_spanned",
            "direct": false,
            "version": "0.6.9",
            "ecosystem": "crates"
          },
          {
            "name": "serde_spanned",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "serde_urlencoded",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "crates"
          },
          {
            "name": "serde_with",
            "direct": false,
            "version": "3.21.0",
            "ecosystem": "crates"
          },
          {
            "name": "serde_with_macros",
            "direct": false,
            "version": "3.21.0",
            "ecosystem": "crates"
          },
          {
            "name": "serialize-to-javascript",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "serialize-to-javascript-impl",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "servo_arc",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "crates"
          },
          {
            "name": "sha2",
            "direct": false,
            "version": "0.10.9",
            "ecosystem": "crates"
          },
          {
            "name": "shlex",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "signal-hook-registry",
            "direct": false,
            "version": "1.4.8",
            "ecosystem": "crates"
          },
          {
            "name": "simd-adler32",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "crates"
          },
          {
            "name": "siphasher",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "crates"
          },
          {
            "name": "slab",
            "direct": false,
            "version": "0.4.12",
            "ecosystem": "crates"
          },
          {
            "name": "smallvec",
            "direct": false,
            "version": "1.15.2",
            "ecosystem": "crates"
          },
          {
            "name": "socket2",
            "direct": false,
            "version": "0.6.4",
            "ecosystem": "crates"
          },
          {
            "name": "softbuffer",
            "direct": false,
            "version": "0.4.8",
            "ecosystem": "crates"
          },
          {
            "name": "soup3",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "soup3-sys",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "stable_deref_trait",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "string_cache",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "string_cache_codegen",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "strsim",
            "direct": false,
            "version": "0.11.1",
            "ecosystem": "crates"
          },
          {
            "name": "subtle",
            "direct": false,
            "version": "2.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "swift-rs",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "crates"
          },
          {
            "name": "syn",
            "direct": false,
            "version": "1.0.109",
            "ecosystem": "crates"
          },
          {
            "name": "syn",
            "direct": false,
            "version": "2.0.118",
            "ecosystem": "crates"
          },
          {
            "name": "sync_wrapper",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "synstructure",
            "direct": false,
            "version": "0.13.2",
            "ecosystem": "crates"
          },
          {
            "name": "system-configuration",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "system-configuration-sys",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "system-deps",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "tao",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "crates"
          },
          {
            "name": "tao-macros",
            "direct": false,
            "version": "0.1.3",
            "ecosystem": "crates"
          },
          {
            "name": "target-lexicon",
            "direct": false,
            "version": "0.12.16",
            "ecosystem": "crates"
          },
          {
            "name": "tauri",
            "direct": false,
            "version": "2.11.3",
            "ecosystem": "crates"
          },
          {
            "name": "tauri-build",
            "direct": false,
            "version": "2.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "tauri-codegen",
            "direct": false,
            "version": "2.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "tauri-macros",
            "direct": false,
            "version": "2.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "tauri-plugin",
            "direct": false,
            "version": "2.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "tauri-plugin-fs",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "tauri-plugin-http",
            "direct": false,
            "version": "2.5.9",
            "ecosystem": "crates"
          },
          {
            "name": "tauri-plugin-opener",
            "direct": false,
            "version": "2.5.4",
            "ecosystem": "crates"
          },
          {
            "name": "tauri-runtime",
            "direct": false,
            "version": "2.11.3",
            "ecosystem": "crates"
          },
          {
            "name": "tauri-runtime-wry",
            "direct": false,
            "version": "2.11.3",
            "ecosystem": "crates"
          },
          {
            "name": "tauri-utils",
            "direct": false,
            "version": "2.9.3",
            "ecosystem": "crates"
          },
          {
            "name": "tauri-winres",
            "direct": false,
            "version": "0.3.6",
            "ecosystem": "crates"
          },
          {
            "name": "tempfile",
            "direct": false,
            "version": "3.27.0",
            "ecosystem": "crates"
          },
          {
            "name": "tendril",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror",
            "direct": false,
            "version": "1.0.69",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror",
            "direct": false,
            "version": "2.0.18",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror-impl",
            "direct": false,
            "version": "1.0.69",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror-impl",
            "direct": false,
            "version": "2.0.18",
            "ecosystem": "crates"
          },
          {
            "name": "time",
            "direct": false,
            "version": "0.3.51",
            "ecosystem": "crates"
          },
          {
            "name": "time-core",
            "direct": false,
            "version": "0.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "time-macros",
            "direct": false,
            "version": "0.2.30",
            "ecosystem": "crates"
          },
          {
            "name": "tinystr",
            "direct": false,
            "version": "0.8.3",
            "ecosystem": "crates"
          },
          {
            "name": "tinyvec",
            "direct": false,
            "version": "1.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "tinyvec_macros",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "tokio",
            "direct": false,
            "version": "1.52.3",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-macros",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-rustls",
            "direct": false,
            "version": "0.26.4",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-util",
            "direct": false,
            "version": "0.7.18",
            "ecosystem": "crates"
          },
          {
            "name": "toml",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "crates"
          },
          {
            "name": "toml",
            "direct": false,
            "version": "0.9.12+spec-1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "toml",
            "direct": false,
            "version": "1.1.2+spec-1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "toml_datetime",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "toml_datetime",
            "direct": false,
            "version": "0.7.5+spec-1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "toml_datetime",
            "direct": false,
            "version": "1.1.1+spec-1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "toml_edit",
            "direct": false,
            "version": "0.19.15",
            "ecosystem": "crates"
          },
          {
            "name": "toml_edit",
            "direct": false,
            "version": "0.20.2",
            "ecosystem": "crates"
          },
          {
            "name": "toml_edit",
            "direct": false,
            "version": "0.25.12+spec-1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "toml_parser",
            "direct": false,
            "version": "1.1.2+spec-1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "toml_writer",
            "direct": false,
            "version": "1.1.1+spec-1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "tower",
            "direct": false,
            "version": "0.5.3",
            "ecosystem": "crates"
          },
          {
            "name": "tower-http",
            "direct": false,
            "version": "0.6.11",
            "ecosystem": "crates"
          },
          {
            "name": "tower-layer",
            "direct": false,
            "version": "0.3.3",
            "ecosystem": "crates"
          },
          {
            "name": "tower-service",
            "direct": false,
            "version": "0.3.3",
            "ecosystem": "crates"
          },
          {
            "name": "tracing",
            "direct": false,
            "version": "0.1.44",
            "ecosystem": "crates"
          },
          {
            "name": "tracing-attributes",
            "direct": false,
            "version": "0.1.31",
            "ecosystem": "crates"
          },
          {
            "name": "tracing-core",
            "direct": false,
            "version": "0.1.36",
            "ecosystem": "crates"
          },
          {
            "name": "tray-icon",
            "direct": false,
            "version": "0.24.1",
            "ecosystem": "crates"
          },
          {
            "name": "try-lock",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "crates"
          },
          {
            "name": "typeid",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "crates"
          },
          {
            "name": "typenum",
            "direct": false,
            "version": "1.20.1",
            "ecosystem": "crates"
          },
          {
            "name": "uds_windows",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "unic-char-property",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "unic-char-range",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "unic-common",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "unic-ucd-ident",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "unic-ucd-version",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "unicode-ident",
            "direct": false,
            "version": "1.0.24",
            "ecosystem": "crates"
          },
          {
            "name": "unicode-segmentation",
            "direct": false,
            "version": "1.13.3",
            "ecosystem": "crates"
          },
          {
            "name": "untrusted",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "url",
            "direct": false,
            "version": "2.5.8",
            "ecosystem": "crates"
          },
          {
            "name": "urlpattern",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "utf-8",
            "direct": false,
            "version": "0.7.6",
            "ecosystem": "crates"
          },
          {
            "name": "utf8_iter",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "crates"
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "1.23.4",
            "ecosystem": "crates"
          },
          {
            "name": "version-compare",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "version_check",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "crates"
          },
          {
            "name": "vswhom",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "vswhom-sys",
            "direct": false,
            "version": "0.1.3",
            "ecosystem": "crates"
          },
          {
            "name": "walkdir",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "want",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "crates"
          },
          {
            "name": "wasi",
            "direct": false,
            "version": "0.11.1+wasi-snapshot-preview1",
            "ecosystem": "crates"
          },
          {
            "name": "wasip2",
            "direct": false,
            "version": "1.0.4+wasi-0.2.12",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen",
            "direct": false,
            "version": "0.2.126",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-futures",
            "direct": false,
            "version": "0.4.76",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-macro",
            "direct": false,
            "version": "0.2.126",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-macro-support",
            "direct": false,
            "version": "0.2.126",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-shared",
            "direct": false,
            "version": "0.2.126",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-streams",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "web-sys",
            "direct": false,
            "version": "0.3.103",
            "ecosystem": "crates"
          },
          {
            "name": "web-time",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "web_atoms",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "crates"
          },
          {
            "name": "webkit2gtk",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "webkit2gtk-sys",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "webpki-roots",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "crates"
          },
          {
            "name": "webview2-com",
            "direct": false,
            "version": "0.38.2",
            "ecosystem": "crates"
          },
          {
            "name": "webview2-com-macros",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "crates"
          },
          {
            "name": "webview2-com-sys",
            "direct": false,
            "version": "0.38.2",
            "ecosystem": "crates"
          },
          {
            "name": "winapi",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "crates"
          },
          {
            "name": "winapi-i686-pc-windows-gnu",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "winapi-util",
            "direct": false,
            "version": "0.1.11",
            "ecosystem": "crates"
          },
          {
            "name": "winapi-x86_64-pc-windows-gnu",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "window-vibrancy",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows",
            "direct": false,
            "version": "0.61.3",
            "ecosystem": "crates"
          },
          {
            "name": "windows-collections",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows-core",
            "direct": false,
            "version": "0.61.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-core",
            "direct": false,
            "version": "0.62.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-future",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows-implement",
            "direct": false,
            "version": "0.60.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-interface",
            "direct": false,
            "version": "0.59.3",
            "ecosystem": "crates"
          },
          {
            "name": "windows-link",
            "direct": false,
            "version": "0.1.3",
            "ecosystem": "crates"
          },
          {
            "name": "windows-link",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows-numerics",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows-registry",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows-result",
            "direct": false,
            "version": "0.3.4",
            "ecosystem": "crates"
          },
          {
            "name": "windows-result",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows-strings",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-strings",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows-sys",
            "direct": false,
            "version": "0.45.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows-sys",
            "direct": false,
            "version": "0.52.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows-sys",
            "direct": false,
            "version": "0.59.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows-sys",
            "direct": false,
            "version": "0.60.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-sys",
            "direct": false,
            "version": "0.61.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-targets",
            "direct": false,
            "version": "0.42.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-targets",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows-targets",
            "direct": false,
            "version": "0.53.5",
            "ecosystem": "crates"
          },
          {
            "name": "windows-threading",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows-version",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "crates"
          },
          {
            "name": "windows_aarch64_gnullvm",
            "direct": false,
            "version": "0.42.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows_aarch64_gnullvm",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_aarch64_gnullvm",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows_aarch64_msvc",
            "direct": false,
            "version": "0.42.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows_aarch64_msvc",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_aarch64_msvc",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_gnu",
            "direct": false,
            "version": "0.42.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_gnu",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_gnu",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_gnullvm",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_gnullvm",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_msvc",
            "direct": false,
            "version": "0.42.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_msvc",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_i686_msvc",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_gnu",
            "direct": false,
            "version": "0.42.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_gnu",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_gnu",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_gnullvm",
            "direct": false,
            "version": "0.42.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_gnullvm",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_gnullvm",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_msvc",
            "direct": false,
            "version": "0.42.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_msvc",
            "direct": false,
            "version": "0.52.6",
            "ecosystem": "crates"
          },
          {
            "name": "windows_x86_64_msvc",
            "direct": false,
            "version": "0.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "winnow",
            "direct": false,
            "version": "0.5.40",
            "ecosystem": "crates"
          },
          {
            "name": "winnow",
            "direct": false,
            "version": "0.7.15",
            "ecosystem": "crates"
          },
          {
            "name": "winnow",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "crates"
          },
          {
            "name": "winreg",
            "direct": false,
            "version": "0.55.0",
            "ecosystem": "crates"
          },
          {
            "name": "wit-bindgen",
            "direct": false,
            "version": "0.57.1",
            "ecosystem": "crates"
          },
          {
            "name": "writeable",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "wry",
            "direct": false,
            "version": "0.55.1",
            "ecosystem": "crates"
          },
          {
            "name": "x11",
            "direct": false,
            "version": "2.21.0",
            "ecosystem": "crates"
          },
          {
            "name": "x11-dl",
            "direct": false,
            "version": "2.21.0",
            "ecosystem": "crates"
          },
          {
            "name": "yoke",
            "direct": false,
            "version": "0.8.3",
            "ecosystem": "crates"
          },
          {
            "name": "yoke-derive",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "crates"
          },
          {
            "name": "zbus",
            "direct": false,
            "version": "5.16.0",
            "ecosystem": "crates"
          },
          {
            "name": "zbus_macros",
            "direct": false,
            "version": "5.16.0",
            "ecosystem": "crates"
          },
          {
            "name": "zbus_names",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "zerocopy",
            "direct": false,
            "version": "0.8.52",
            "ecosystem": "crates"
          },
          {
            "name": "zerocopy-derive",
            "direct": false,
            "version": "0.8.52",
            "ecosystem": "crates"
          },
          {
            "name": "zerofrom",
            "direct": false,
            "version": "0.1.8",
            "ecosystem": "crates"
          },
          {
            "name": "zerofrom-derive",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "crates"
          },
          {
            "name": "zeroize",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "zeroize_derive",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "zerotrie",
            "direct": false,
            "version": "0.2.4",
            "ecosystem": "crates"
          },
          {
            "name": "zerovec",
            "direct": false,
            "version": "0.11.6",
            "ecosystem": "crates"
          },
          {
            "name": "zerovec-derive",
            "direct": false,
            "version": "0.11.3",
            "ecosystem": "crates"
          },
          {
            "name": "zmij",
            "direct": false,
            "version": "1.0.21",
            "ecosystem": "crates"
          },
          {
            "name": "zvariant",
            "direct": false,
            "version": "5.12.0",
            "ecosystem": "crates"
          },
          {
            "name": "zvariant_derive",
            "direct": false,
            "version": "5.12.0",
            "ecosystem": "crates"
          },
          {
            "name": "zvariant_utils",
            "direct": false,
            "version": "3.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "@asamuzakjp/css-color",
            "direct": false,
            "version": "5.1.11",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/dom-selector",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/generational-cache",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/nwsapi",
            "direct": false,
            "version": "2.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/code-frame",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/compat-data",
            "direct": false,
            "version": "7.29.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/core",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/generator",
            "direct": false,
            "version": "7.29.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-compilation-targets",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-globals",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-imports",
            "direct": false,
            "version": "7.18.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-imports",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-transforms",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-plugin-utils",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "7.28.5",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-option",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helpers",
            "direct": false,
            "version": "7.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "7.29.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-jsx",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-typescript",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/runtime",
            "direct": false,
            "version": "7.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/template",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/traverse",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@bramus/specificity",
            "direct": false,
            "version": "2.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/apply-release-plan",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/assemble-release-plan",
            "direct": false,
            "version": "6.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/changelog-git",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/cli",
            "direct": false,
            "version": "2.31.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/config",
            "direct": false,
            "version": "3.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/errors",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-dependents-graph",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-release-plan",
            "direct": false,
            "version": "4.0.16",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-version-range-type",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/git",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/logger",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/parse",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/pre",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/read",
            "direct": false,
            "version": "0.6.7",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/should-skip-package",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/types",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/types",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/write",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/autocomplete",
            "direct": false,
            "version": "6.20.2",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/autocomplete",
            "direct": false,
            "version": "^6.20.2",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/commands",
            "direct": false,
            "version": "6.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/lang-javascript",
            "direct": false,
            "version": "6.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/lang-javascript",
            "direct": false,
            "version": "^6.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/lang-json",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/lang-json",
            "direct": false,
            "version": "^6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/language",
            "direct": false,
            "version": "6.12.3",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/lint",
            "direct": false,
            "version": "6.9.6",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/lint",
            "direct": false,
            "version": "^6.9.6",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/search",
            "direct": false,
            "version": "6.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/state",
            "direct": false,
            "version": "6.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/state",
            "direct": false,
            "version": "^6.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/theme-one-dark",
            "direct": false,
            "version": "6.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/theme-one-dark",
            "direct": false,
            "version": "^6.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/view",
            "direct": false,
            "version": "6.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/view",
            "direct": false,
            "version": "^6.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/color-helpers",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-calc",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-color-parser",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-parser-algorithms",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-syntax-patches-for-csstree",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-tokenizer",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/core",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/wasi-threads",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openharmony-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/eslint-utils",
            "direct": false,
            "version": "4.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/regexpp",
            "direct": false,
            "version": "4.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-array",
            "direct": false,
            "version": "0.23.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-helpers",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/core",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": false,
            "version": "10.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": false,
            "version": "^10.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/object-schema",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/plugin-kit",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "@exodus/bytes",
            "direct": false,
            "version": "1.15.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/core",
            "direct": false,
            "version": "0.19.2",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/node",
            "direct": false,
            "version": "0.16.8",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/types",
            "direct": false,
            "version": "0.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/module-importer",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/retry",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/external-editor",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/gen-mapping",
            "direct": false,
            "version": "0.3.13",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/remapping",
            "direct": false,
            "version": "2.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/resolve-uri",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.31",
            "ecosystem": "npm"
          },
          {
            "name": "@lezer/common",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@lezer/highlight",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@lezer/javascript",
            "direct": false,
            "version": "1.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@lezer/json",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@lezer/lr",
            "direct": false,
            "version": "1.4.10",
            "ecosystem": "npm"
          },
          {
            "name": "@manypkg/find-root",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@manypkg/get-packages",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@marijn/find-cluster-break",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/wasm-runtime",
            "direct": false,
            "version": "1.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.scandir",
            "direct": false,
            "version": "2.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.stat",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.walk",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "@nothing-but/utils",
            "direct": false,
            "version": "0.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-project/types",
            "direct": false,
            "version": "0.138.0",
            "ecosystem": "npm"
          },
          {
            "name": "@pixi/colord",
            "direct": false,
            "version": "2.9.6",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-android-arm64",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-arm64",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-x64",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-freebsd-x64",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-gnu",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-musl",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-s390x-gnu",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-gnu",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-musl",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-openharmony-arm64",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-wasm32-wasi",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-arm64-msvc",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-x64-msvc",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/pluginutils",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm-eabi",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm-eabi",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-arm64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-x64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-x64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-arm64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-x64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-x64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-musleabihf",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-musleabihf",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-musl",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-musl",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-musl",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-musl",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-s390x-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-s390x-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-musl",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openbsd-x64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openbsd-x64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openharmony-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openharmony-arm64",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-arm64-msvc",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-arm64-msvc",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-ia32-msvc",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-ia32-msvc",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-gnu",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-msvc",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-msvc",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "@solid-devtools/debugger",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@solid-devtools/debugger",
            "direct": false,
            "version": "^0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@solid-devtools/shared",
            "direct": false,
            "version": "0.20.0",
            "ecosystem": "npm"
          },
          {
            "name": "@solid-primitives/bounds",
            "direct": false,
            "version": "0.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@solid-primitives/event-listener",
            "direct": false,
            "version": "2.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "@solid-primitives/keyboard",
            "direct": false,
            "version": "1.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@solid-primitives/media",
            "direct": false,
            "version": "2.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@solid-primitives/refs",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@solid-primitives/resize-observer",
            "direct": false,
            "version": "2.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@solid-primitives/rootless",
            "direct": false,
            "version": "1.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "@solid-primitives/scheduled",
            "direct": false,
            "version": "1.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "@solid-primitives/static-store",
            "direct": false,
            "version": "0.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@solid-primitives/styles",
            "direct": false,
            "version": "0.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@solid-primitives/utils",
            "direct": false,
            "version": "6.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@standard-schema/spec",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/api",
            "direct": false,
            "version": "2.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/api",
            "direct": false,
            "version": "^2",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/cli",
            "direct": false,
            "version": "2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/cli",
            "direct": false,
            "version": "^2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/cli-darwin-arm64",
            "direct": false,
            "version": "2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/cli-darwin-x64",
            "direct": false,
            "version": "2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/cli-linux-arm-gnueabihf",
            "direct": false,
            "version": "2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/cli-linux-arm64-gnu",
            "direct": false,
            "version": "2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/cli-linux-arm64-musl",
            "direct": false,
            "version": "2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/cli-linux-riscv64-gnu",
            "direct": false,
            "version": "2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/cli-linux-x64-gnu",
            "direct": false,
            "version": "2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/cli-linux-x64-musl",
            "direct": false,
            "version": "2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/cli-win32-arm64-msvc",
            "direct": false,
            "version": "2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/cli-win32-ia32-msvc",
            "direct": false,
            "version": "2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/cli-win32-x64-msvc",
            "direct": false,
            "version": "2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/plugin-http",
            "direct": false,
            "version": "2.5.9",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/plugin-http",
            "direct": false,
            "version": "^2",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/plugin-opener",
            "direct": false,
            "version": "2.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/plugin-opener",
            "direct": false,
            "version": "^2",
            "ecosystem": "npm"
          },
          {
            "name": "@tybys/wasm-util",
            "direct": false,
            "version": "0.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__core",
            "direct": false,
            "version": "7.20.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__generator",
            "direct": false,
            "version": "7.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__template",
            "direct": false,
            "version": "7.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__traverse",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/chai",
            "direct": false,
            "version": "5.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/deep-eql",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/earcut",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/esrecurse",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json-schema",
            "direct": false,
            "version": "7.0.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "12.20.55",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "26.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "^26.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/screeps",
            "direct": false,
            "version": "3.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/screeps",
            "direct": false,
            "version": "^3.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "8.63.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "^8.63.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "8.63.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "^8.63.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/project-service",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/project-service",
            "direct": false,
            "version": "8.63.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/scope-manager",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/scope-manager",
            "direct": false,
            "version": "8.63.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/tsconfig-utils",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/tsconfig-utils",
            "direct": false,
            "version": "8.63.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/type-utils",
            "direct": false,
            "version": "8.63.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/types",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/types",
            "direct": false,
            "version": "8.63.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/typescript-estree",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/typescript-estree",
            "direct": false,
            "version": "8.63.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/utils",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/utils",
            "direct": false,
            "version": "8.63.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/visitor-keys",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/visitor-keys",
            "direct": false,
            "version": "8.63.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/vfs",
            "direct": false,
            "version": "1.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/vfs",
            "direct": false,
            "version": "^1.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "@valtown/codemirror-ts",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@valtown/codemirror-ts",
            "direct": false,
            "version": "^2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/expect",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/mocker",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/pretty-format",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/runner",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/snapshot",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/spy",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/utils",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@webgpu/types",
            "direct": false,
            "version": "0.1.70",
            "ecosystem": "npm"
          },
          {
            "name": "@xmldom/xmldom",
            "direct": false,
            "version": "0.8.13",
            "ecosystem": "npm"
          },
          {
            "name": "accepts",
            "direct": false,
            "version": "1.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-jsx",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "agent-base",
            "direct": false,
            "version": "9.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-colors",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "any-promise",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "array-flatten",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "array-union",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "assertion-error",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "babel-plugin-jsx-dom-expressions",
            "direct": false,
            "version": "0.40.7",
            "ecosystem": "npm"
          },
          {
            "name": "babel-preset-solid",
            "direct": false,
            "version": "1.9.12",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "baseline-browser-mapping",
            "direct": false,
            "version": "2.10.31",
            "ecosystem": "npm"
          },
          {
            "name": "better-path-resolve",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "bidi-js",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "body-parser",
            "direct": false,
            "version": "1.20.6",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "braces",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "browserslist",
            "direct": false,
            "version": "4.28.2",
            "ecosystem": "npm"
          },
          {
            "name": "bundle-require",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "bytes",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "cac",
            "direct": false,
            "version": "6.7.14",
            "ecosystem": "npm"
          },
          {
            "name": "call-bind-apply-helpers",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "call-bound",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "caniuse-lite",
            "direct": false,
            "version": "1.0.30001793",
            "ecosystem": "npm"
          },
          {
            "name": "chai",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "chardet",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "codemirror",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "codemirror",
            "direct": false,
            "version": "^6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "comlink",
            "direct": false,
            "version": "4.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "comlink",
            "direct": false,
            "version": "^4.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "confbox",
            "direct": false,
            "version": "0.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "consola",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "content-disposition",
            "direct": false,
            "version": "0.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "content-type",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cookie",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "cookie-signature",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "crelt",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "css-tree",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "csstype",
            "direct": false,
            "version": "3.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "data-urls",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "2.6.9",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decimal.js",
            "direct": false,
            "version": "10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "deep-is",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "depd",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "destroy",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-indent",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-libc",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "dir-glob",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "dunder-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "earcut",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ee-first",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "electron-to-chromium",
            "direct": false,
            "version": "1.5.361",
            "ecosystem": "npm"
          },
          {
            "name": "encodeurl",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "enquirer",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-define-property",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-errors",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-module-lexer",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-object-atoms",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-html",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "^10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-solid",
            "direct": false,
            "version": "0.14.5",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-solid",
            "direct": false,
            "version": "^0.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "9.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "espree",
            "direct": false,
            "version": "11.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "esprima",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "esquery",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "esrecurse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "esutils",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "etag",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "eventemitter3",
            "direct": false,
            "version": "4.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "eventemitter3",
            "direct": false,
            "version": "5.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "expect-type",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "extendable-error",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "fake-indexeddb",
            "direct": false,
            "version": "6.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "fake-indexeddb",
            "direct": false,
            "version": "^6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-glob",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-json-stable-stringify",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-levenshtein",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "fastq",
            "direct": false,
            "version": "1.20.1",
            "ecosystem": "npm"
          },
          {
            "name": "fdir",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "file-entry-cache",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fill-range",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "finalhandler",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fix-dts-default-cjs-exports",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "flat-cache",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "flatted",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "follow-redirects",
            "direct": false,
            "version": "1.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "forwarded",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "fresh",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "function-bind",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "gensync",
            "direct": false,
            "version": "1.0.0-beta.2",
            "ecosystem": "npm"
          },
          {
            "name": "get-intrinsic",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "gifuct-js",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "17.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "^17.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "globby",
            "direct": false,
            "version": "11.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "gopd",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "has-symbols",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "hasown",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "html-encoding-sniffer",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-entities",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "html-tags",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "http-errors",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "https-proxy-agent",
            "direct": false,
            "version": "9.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "https-proxy-agent",
            "direct": false,
            "version": "^9.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "human-id",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.4.24",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "7.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "imurmurhash",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "inherits",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "inline-style-parser",
            "direct": false,
            "version": "0.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "ipaddr.js",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-glob",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-html",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-number",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-potential-custom-element-name",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-subdir",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-what",
            "direct": false,
            "version": "4.1.16",
            "ecosystem": "npm"
          },
          {
            "name": "is-windows",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ismobilejs",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "joycon",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "js-binary-schema-parser",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "3.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsdom",
            "direct": false,
            "version": "29.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsdom",
            "direct": false,
            "version": "^29.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsesc",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-buffer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-stable-stringify-without-jsonify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "jsonfile",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "kebab-case",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "keyv",
            "direct": false,
            "version": "4.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "known-css-properties",
            "direct": false,
            "version": "0.30.0",
            "ecosystem": "npm"
          },
          {
            "name": "levn",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-android-arm64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-arm64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-x64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-freebsd-x64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-gnu",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-musl",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-gnu",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-musl",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-arm64-msvc",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-x64-msvc",
            "direct": false,
            "version": "1.32.0",
            "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": "load-tsconfig",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.startcase",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "11.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "lucide-solid",
            "direct": false,
            "version": "1.23.0",
            "ecosystem": "npm"
          },
          {
            "name": "lucide-solid",
            "direct": false,
            "version": "^1.23.0",
            "ecosystem": "npm"
          },
          {
            "name": "lz-string",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "lz-string",
            "direct": false,
            "version": "^1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "magic-string",
            "direct": false,
            "version": "0.30.21",
            "ecosystem": "npm"
          },
          {
            "name": "math-intrinsics",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdn-data",
            "direct": false,
            "version": "2.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "media-typer",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "merge-anything",
            "direct": false,
            "version": "5.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "merge-descriptors",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "merge2",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "methods",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromatch",
            "direct": false,
            "version": "4.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "mime",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-db",
            "direct": false,
            "version": "1.52.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-types",
            "direct": false,
            "version": "2.1.35",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "10.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "mlly",
            "direct": false,
            "version": "1.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "mri",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "mz",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.15",
            "ecosystem": "npm"
          },
          {
            "name": "natural-compare",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "negotiator",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "node-releases",
            "direct": false,
            "version": "2.0.46",
            "ecosystem": "npm"
          },
          {
            "name": "object-assign",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "object-inspect",
            "direct": false,
            "version": "1.13.4",
            "ecosystem": "npm"
          },
          {
            "name": "obug",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "on-finished",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "optionator",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "outdent",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-filter",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-map",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-try",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "package-manager-detector",
            "direct": false,
            "version": "0.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "parse-svg-path",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": false,
            "version": "7.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parseurl",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "path-exists",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-to-regexp",
            "direct": false,
            "version": "0.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "path-type",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "pathe",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "pify",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pirates",
            "direct": false,
            "version": "4.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "pixi.js",
            "direct": false,
            "version": "8.19.0",
            "ecosystem": "npm"
          },
          {
            "name": "pixi.js",
            "direct": false,
            "version": "^8.19.0",
            "ecosystem": "npm"
          },
          {
            "name": "pkg-types",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.16",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-load-config",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "prelude-ls",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": false,
            "version": "2.8.8",
            "ecosystem": "npm"
          },
          {
            "name": "proxy-addr",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "proxy-agent-negotiate",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.15.3",
            "ecosystem": "npm"
          },
          {
            "name": "quansync",
            "direct": false,
            "version": "0.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "queue-microtask",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "range-parser",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "raw-body",
            "direct": false,
            "version": "2.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "read-yaml-file",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "require-from-string",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "requires-port",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "reusify",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "rolldown",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.62.0",
            "ecosystem": "npm"
          },
          {
            "name": "run-parallel",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "safer-buffer",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "saxes",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "6.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.8.5",
            "ecosystem": "npm"
          },
          {
            "name": "send",
            "direct": false,
            "version": "0.19.2",
            "ecosystem": "npm"
          },
          {
            "name": "seroval",
            "direct": false,
            "version": "1.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "seroval-plugins",
            "direct": false,
            "version": "1.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "serve-static",
            "direct": false,
            "version": "1.16.3",
            "ecosystem": "npm"
          },
          {
            "name": "setprototypeof",
            "direct": false,
            "version": "1.2.0",
            "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": "side-channel",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-list",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-map",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-weakmap",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "siginfo",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "signal-exit",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "slash",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "solid-codemirror",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "solid-codemirror",
            "direct": false,
            "version": "^2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "solid-devtools",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "solid-devtools",
            "direct": false,
            "version": "^0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "solid-js",
            "direct": false,
            "version": "1.9.14",
            "ecosystem": "npm"
          },
          {
            "name": "solid-js",
            "direct": false,
            "version": "^1.9.14",
            "ecosystem": "npm"
          },
          {
            "name": "solid-refresh",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.7.6",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-js",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "spawndamnit",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "sprintf-js",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "stackback",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "statuses",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "std-env",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "strip-bom",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "style-mod",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "style-to-object",
            "direct": false,
            "version": "1.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "sucrase",
            "direct": false,
            "version": "3.35.1",
            "ecosystem": "npm"
          },
          {
            "name": "symbol-tree",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "term-size",
            "direct": false,
            "version": "2.2.1",
            "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-lru",
            "direct": false,
            "version": "11.4.7",
            "ecosystem": "npm"
          },
          {
            "name": "tinybench",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.16",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "npm"
          },
          {
            "name": "tinyrainbow",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "tldts",
            "direct": false,
            "version": "7.0.30",
            "ecosystem": "npm"
          },
          {
            "name": "tldts-core",
            "direct": false,
            "version": "7.0.30",
            "ecosystem": "npm"
          },
          {
            "name": "to-regex-range",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "toidentifier",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tough-cookie",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tr46",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "tree-kill",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "ts-api-utils",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-interface-checker",
            "direct": false,
            "version": "0.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "tsup",
            "direct": false,
            "version": "8.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "tsup",
            "direct": false,
            "version": "^8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-check",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-is",
            "direct": false,
            "version": "1.6.18",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "^6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript-eslint",
            "direct": false,
            "version": "8.63.0",
            "ecosystem": "npm"
          },
          {
            "name": "typescript-eslint",
            "direct": false,
            "version": "^8.63.0",
            "ecosystem": "npm"
          },
          {
            "name": "ufo",
            "direct": false,
            "version": "1.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "undici",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "8.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "unpipe",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "update-browserslist-db",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "uri-js",
            "direct": false,
            "version": "4.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "utils-merge",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "vary",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "8.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "^8.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "vite-plugin-singlefile",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "vite-plugin-singlefile",
            "direct": false,
            "version": "^2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "vite-plugin-solid",
            "direct": false,
            "version": "2.11.12",
            "ecosystem": "npm"
          },
          {
            "name": "vite-plugin-solid",
            "direct": false,
            "version": "^2.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "vitefu",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "^4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "w3c-keyname",
            "direct": false,
            "version": "2.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "w3c-xmlserializer",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-mimetype",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-url",
            "direct": false,
            "version": "16.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "why-is-node-running",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "word-wrap",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "xml-name-validator",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "xmlchars",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yocto-queue",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 1170,
        "direct_count": 7,
        "indirect_count": 1163
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 0,
        "merged_prs": 222,
        "open_issues": 1,
        "closed_ratio": 0,
        "closed_issues": 0,
        "closed_unmerged_prs": 8
      },
      "bus_factor": 1,
      "bot_contributors": 3,
      "top_contributors": [
        {
          "type": "User",
          "login": "bastianh",
          "commits": 355,
          "avatar_url": "https://avatars.githubusercontent.com/u/17590?v=4"
        },
        {
          "type": "User",
          "login": "misterwise",
          "commits": 21,
          "avatar_url": "https://avatars.githubusercontent.com/u/14551481?v=4"
        },
        {
          "type": "User",
          "login": "claude",
          "commits": 5,
          "avatar_url": "https://avatars.githubusercontent.com/u/81847?v=4"
        }
      ],
      "contributors_sampled": 3,
      "top_contributor_share": 0.932
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "claude.yml",
        "desktop-release.yml",
        "pr.yml",
        "release.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        "eslint.config.js"
      ],
      "has_editorconfig": false,
      "has_linter_config": true,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "Cargo.lock",
        "pnpm-lock.yaml"
      ],
      "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": 3,
            "reason": "branch protection is not maximal on development and all release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "15 out of 15 merged PRs checked by a CI test -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 0,
            "reason": "Found 0/12 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": 10,
            "reason": "update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 0,
            "reason": "project was created within the last 90 days. Please review its contents carefully",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 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": 8,
            "reason": "SAST tool is not run on all commits -- score normalized to 8",
            "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": "23 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "2c0281e7c9b876234f9ef1a103fdfd750ff6ac7f",
        "ran_at": "2026-07-25T12:10:04Z",
        "aggregate_score": 4.1,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-21T16:49:32Z",
      "oldest_open_prs": [],
      "last_merged_pr_at": "2026-07-19T14:11:15Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 130,
          "created_at": "2026-06-22T18:39:57Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/bastianh/screeps-client",
    "host": "github.com",
    "name": "screeps-client",
    "owner": "bastianh"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "moderate",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 58,
      "inputs": {
        "security": 53,
        "vitality": 77,
        "community": 37,
        "governance": 49,
        "engineering": 72
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "good",
        "name": "Vitality",
        "value": 77,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "moderate",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 62,
            "inputs": {
              "commits_last_year": 440,
              "human_commit_share": 0.91,
              "days_since_last_push": 5,
              "active_weeks_last_year": 11
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 5 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 5
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "11/52 weeks with commits",
                "points": 7.6,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 11
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "440 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 440
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "project was created within the last 90 days. Please review its contents carefully",
                "points": 0,
                "status": "missed",
                "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": 100,
            "inputs": {
              "releases_count": 100,
              "latest_release_tag": "screepsmod-client-new@0.2.25",
              "releases_from_tags": false,
              "days_since_latest_release": 5,
              "mean_days_between_releases": 0.8
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "100 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 5 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 5
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~0.8 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 0.8
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "unverified",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": "repository_too_young",
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": null,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "maintenance record not established from the collected data",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_unverified",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "at_risk",
        "name": "Community & Adoption",
        "value": 37,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 7,
            "inputs": {
              "forks": 3,
              "stars": 3,
              "watchers": 1,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "3 stars",
                "points": 4.9,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 3
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "3 forks",
                "points": 2.5,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 3
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "1 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "moderate",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 50,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": false,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (ISC)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "ISC"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 0,
                "status": "missed",
                "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": "moderate",
            "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": 67,
            "inputs": {
              "packages": [
                "screeps-client",
                "screepsmod-client-new",
                "screeps-client-proxy",
                "screeps-connectivity",
                "xxscreeps-mod-client"
              ],
              "dependents": null,
              "ecosystems": "npm",
              "total_downloads": null,
              "monthly_downloads": 10541
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "10,541 downloads/month across npm",
                "points": 53.6,
                "status": "partial",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 10541,
                      "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": "at_risk",
        "name": "Sustainability & Governance",
        "value": 49,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "critical",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 21,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 3,
              "top_contributor_share": 0.932
            },
            "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 93% of commits",
                "points": 1.5,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 93
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "3 contributors",
                "points": 4.1,
                "status": "partial",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 3
                    }
                  }
                ],
                "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": "at_risk",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 37,
            "inputs": {
              "merged_prs": 222,
              "open_issues": 1,
              "closed_issues": 0,
              "issue_closed_ratio": 0,
              "closed_unmerged_prs": 8
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "0% of issues closed",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 0
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "222/230 decided PRs merged",
                "points": 36.9,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 222,
                      "decided": 230
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/12 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": 54,
            "inputs": {
              "followers": 26,
              "owner_type": "User",
              "is_verified": null,
              "owner_login": "bastianh",
              "public_repos": 28,
              "account_age_days": 6579
            },
            "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": "26 followers of bastianh",
                "points": 10.3,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 26,
                      "login": "bastianh"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "28 public repos, account ~18 yr old",
                "points": 22.6,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 28
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 18
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "screeps-client",
                "screepsmod-client-new",
                "screeps-client-proxy",
                "screeps-connectivity",
                "xxscreeps-mod-client"
              ],
              "ecosystems": "npm",
              "any_deprecated": false,
              "min_days_since_publish": 5
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "5 package(s) on npm",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 5,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 5 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 5
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "35 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 35
                    }
                  }
                ],
                "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": 72,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "good",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 84,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": true,
              "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": "eslint.config.js",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "eslint.config.js"
                    }
                  }
                ],
                "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": "15 out of 15 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "moderate",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 55,
            "inputs": {
              "topics": [],
              "has_wiki": false,
              "homepage": null,
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": false
            },
            "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": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 0,
                "status": "missed",
                "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": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "moderate",
        "name": "Security",
        "value": 53,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Packaging, Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "packaging",
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 41,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 16,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 2,
              "scorecard_aggregate": 4.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 is not maximal on development and all release branches",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "15 out of 15 merged PRs checked by a CI test -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 0/12 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": "update tool detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "project was created within the last 90 days. Please review its contents carefully",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 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 8",
                "points": 4,
                "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": "23 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "excellent",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories, No advisories left outstanding. Remaining weights renormalized. Matched 1127 resolved dependencies against OSV; 43 could not be assessed (no resolved version, an unsupported ecosystem, or beyond the reported package list). This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "indirect_dependencies_free_of_known_advisories",
                    "no_advisories_left_outstanding"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_repository",
                "params": {
                  "assessed": 1127
                }
              },
              {
                "code": "advisories_unassessed",
                "params": {
                  "count": 43
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "source": "osv",
              "advisories": 24,
              "affected_packages": 21,
              "assessed_packages": 1127,
              "unassessed_packages": 43,
              "affected_by_severity": "high 3, moderate 1, low 1, unknown 16",
              "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": "transitive set not separable from development and test dependencies in this scope",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_scope_not_separable",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory carries a publication date",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_no_publication_date",
                    "params": {}
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "excellent",
            "name": "Malicious dependencies",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "source": "osv",
              "meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
              "packages": [],
              "red_flag": false,
              "assessed_packages": 1127,
              "malicious_packages": 0,
              "direct_malicious_packages": 0,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 0
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "no dependency is reported as a malicious package",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "no_malicious_dependencies",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 3
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "good",
        "name": "AI Readiness",
        "value": 74,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "excellent",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.967,
              "agent_instruction_files": [
                "AGENTS.md",
                "CLAUDE.md"
              ],
              "agent_instruction_max_bytes": 2657
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "AGENTS.md, CLAUDE.md",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "AGENTS.md, CLAUDE.md"
                    }
                  }
                ],
                "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": "88 of 91 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 88,
                      "sampled": 91
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "good",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 77,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "Cargo.lock",
                "pnpm-lock.yaml"
              ],
              "has_dockerfile": false,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [
                "screeps-client/tsconfig.json",
                "screeps-connectivity/tsconfig.json"
              ],
              "agent_commit_share": 0.05,
              "toolchain_manifests": [
                "screeps-desktop/src-tauri/Cargo.toml"
              ],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "screeps-desktop/src-tauri/Cargo.toml (toolchain convention, no task runner)",
                "points": 12.6,
                "status": "partial",
                "details": [
                  {
                    "code": "toolchain_convention",
                    "params": {
                      "files": "screeps-desktop/src-tauri/Cargo.toml"
                    }
                  }
                ],
                "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": "eslint.config.js",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "eslint.config.js"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "screeps-client/tsconfig.json, screeps-connectivity/tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "screeps-client/tsconfig.json, screeps-connectivity/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": "5 of the last 100 commits agent-authored or agent-credited",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 5,
                      "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": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "primary_language": "TypeScript",
              "largest_source_bytes": 79415,
              "source_files_sampled": 253,
              "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/253 source files over 60KB",
                "points": 54.8,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 253,
                      "oversized": 1
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "critical",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 20,
            "inputs": {
              "example_dirs": [],
              "has_mcp_signal": true,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-25T12:10:20.689023Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/b/bastianh/screeps-client.svg",
  "full_name": "bastianh/screeps-client",
  "license_state": "standard",
  "license_spdx": "ISC"
}

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

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

Wie ein einzelnes Ergebnis im Gesamtregister steht: aggregierte Statistikennpm.