Публічний реєстр
Звіт про здоров'я програмного забезпеченнясхема 0.26.0 · метрики 1.13.0 · 2026-07-22 18:14 UTC

lorenzopant / tmdb

TMDB API wrapper for Typescript projects.

TypeScript · MDXMIT★ 20 зірок⑂ 5 форківз лип. 2025 р.Переглянути на GitHub ↗

lorenzopant/tmdb має індекс здоров’я 65 зі 100, що відповідає смузі «Помірний». Найвищий показник — Vitality (87/100), найнижчий — Sustainability & Governance (54/100). Останнє оновлення було 5 днів тому. Більшість нещодавньої роботи виконує один учасник.

65
загалом / 100
Помірний

Індекс здоров'я програмного забезпечення

Метрики згруповано у зважені категорії на шкалі 1–100. Загальна оцінка починається як їхнє середнє; коли публічні дані активують Політику юрисдикцій високого ризику, рейтинг коригується й отримує верхню межу 49 («Під ризиком»). Готовність до ШІ не входить до індексу.

65
Відмінний85-100Зразковий; відповідає практично всім перевіреним критеріям
Добрий70-84Здоровий; незначні прогалини
Помірний50-69Прийнятний, але з помітними прогалинами; рекомендовано перевірку
У зоні ризику30-49Суттєві слабкі місця; впровадження потребує обережності
Критичний1-29Серйозні проблеми (покинутий, єдиний мейнтейнер, без базової гігієни)
ЖиттєздатністьСпільнота тавпровадженняСталість таврядуванняІнженернаякістьБезпекаГотовність доШІ

Профіль оцінок

Кожна вісь — окрема категорія. Форма важить більше, ніж середнє: здоровий об'єкт заповнює всю фігуру, тоді як профіль із піками та провалами означає, що сила в одному вимірі маскує ризик в іншому.

Власність

@lorenzopantОрганізація
0 підписників2 публічні репозиторіїз лип. 2025 р.

За цим репозиторієм стоїть організація — спільна, підзвітна опіка, здатна пережити будь-якого окремого мейнтейнера.

Пакетні екосистеми

РеєстрПакетВерсіяЗавантажень / місВерсіїОстання публікаціяТеги
npm@lorenzopant/tmdb1.25.02 688765 днів томуapimoviestmdbtypescript

Метрики за категоріями

Життєздатність

Чи живий проєкт — чи пишеться код і чи виходять релізи?

87Відмінний · 22% загального індексу
Як обчислюється оцінка
36/36Свіжість push — останній push 5 дн. тому
15.2/36Ритм комітів — 22/52 тижнів із комітами
18/18Обсяг комітів — 673 комітів за останній рік
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Використані вхідні дані
commits_last_year673
human_commit_share0,99
days_since_last_push5
active_weeks_last_year22
Як обчислюється оцінка
27/27Випускає релізи — опубліковано 51 релізів
36/36Свіжість релізів — останній реліз 5 дн. тому
27/27Ритм релізів — реліз кожні ~10,3 дн.
0/10OpenSSF Scorecard: Signed-Releases — немає даних
Використані вхідні дані
releases_count51
latest_release_tagv1.25.0
releases_from_tagsні
days_since_latest_release5
mean_days_between_releases10,3
Виключено з оцінювання (немає даних або не застосовно): OpenSSF Scorecard: Signed-Releases. Залишкові ваги перенормовано.

Спільнота та впровадження

Чи має проєкт користувачів, завантаження, увагу та влаштовані умови для контриб’юторів?

54Помірний · 18% загального індексу
Як обчислюється оцінка
20.7/60Зірки — 20 зірок
5/25Форки — 5 форків
0/15Спостерігачі — 1 спостерігачів
Використані вхідні дані
forks5
stars20
watchers1
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Як обчислюється оцінка
22.5/22.5README
22.5/22.5Ліцензія — визнана ліцензія (MIT)
18/18Настанови CONTRIBUTING
13.5/13.5Кодекс поведінки
0/7.2Шаблон issue
0/6.3Шаблон PR
Використані вхідні дані
has_readmeтак
has_licenseтак
has_contributingтак
has_issue_templateні
has_code_of_conductтак
has_pull_request_templateні
Як обчислюється оцінка
45.7/80Щомісячні завантаження — 2 688 завантажень/місяць у npm
0/20Залежні пакети в реєстрі — ця екосистема цього не повідомляє
Використані вхідні дані
packages@lorenzopant/tmdb
dependents
ecosystemsnpm
total_downloads
monthly_downloads2 688
Виключено з оцінювання (немає даних або не застосовно): Залежні пакети в реєстрі. Залишкові ваги перенормовано.

Сталість та врядування

Чи переживе проєкт своїх людей — бас-фактор, реактивність, хто за ним стоїть і як супроводжуються пакети?

54Помірний · 24% загального індексу
Як обчислюється оцінка
9/54Бас-фактор — на 1 контриб’ютор(ів) припадає половина всіх комітів
0.4/22.5Розподіл комітів — головний контриб’ютор — автор 98% комітів
5.4/13.5Широта контриб’юторів — 4 контриб’юторів
0/10OpenSSF Scorecard: Contributors — project has 0 contributing companies or organizations -- score normalized to 0
Використані вхідні дані
bus_factor1
contributors_sampled4
top_contributor_share0,981
Як обчислюється оцінка
46.8/46.8Вирішення issue — закрито 100% issue
36.7/38.3Прийняття PR — злито 115/120 вирішених PR
0/15OpenSSF Scorecard: Code-Review — Found 0/13 approved changesets -- score normalized to 0
Використані вхідні дані
merged_prs115
open_issues0
closed_issues18
issue_closed_ratio1
closed_unmerged_prs5

Власність та опіка

36У зоні ризику
Як обчислюється оцінка
30/30Підтримка власника — у власності організації
0/20Верифікований домен
0/25Охоплення власника — 0 підписників у lorenzopant
5.6/25Послужний список — 2 публічних репозиторіїв, вік облікового запису ~1 р.
Використані вхідні дані
followers0
owner_typeOrganization
is_verified
owner_loginlorenzopant
public_repos2
account_age_days384

Супровід пакетів

100Відмінний
Як обчислюється оцінка
25/25Опубліковано й доступно — 1 пакет(ів) у npm
35/35Свіжість публікацій — остання публікація 5 дн. тому
20/20Історія версій — 76 опублікованих версій
20/20Не застарілий — активний, не deprecated і не yanked
Використані вхідні дані
packages@lorenzopant/tmdb
ecosystemsnpm
any_deprecatedні
min_days_since_publish5

Інженерна якість

Чи наявні базові інженерні практики та документація?

71Добрий · 20% загального індексу
Як обчислюється оцінка
24/24Процеси CI — 3 процес(ів) CI
24/24Наявні тести
0/16Конфігурація лінтера
0/9.6Pre-commit-хуки
0/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 7 out of 7 merged PRs checked by a CI test -- score normalized to 10
Використані вхідні дані
has_ciтак
has_testsтак
has_editorconfigні
has_linter_configні
has_precommit_configні
Як обчислюється оцінка
30/30README
0/25Каталог документації
15/15Сайт документації / домашня сторінка — https://tmdb.lorenzopant.dev
10/10Опис репозиторію
10/10Теми — 10 тем
10/10Wiki
Використані вхідні дані
topicsapi, tmdb, tmdb-api, typescript, wrapper, wrapper-api, tmdb-client, tmdb-rest-api, tmdb-ts, typesafe
has_wikiтак
homepagehttps://tmdb.lorenzopant.dev
has_readmeтак
has_docs_dirні
has_descriptionтак

Безпека

Чи міцні видимі практики безпеки й ланцюга постачання, без непослабленої пов’язаності з юрисдикціями високого ризику?

57Помірний · 16% загального індексу

Стан безпеки

46У зоні ризику
Як обчислюється оцінка
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 — 7 out of 7 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/13 approved changesets -- score normalized to 0
0/2.5Contributors — project has 0 contributing companies or organizations -- score normalized to 0
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.5Ліцензія — license file detected
7.5/7.5Maintained — 30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
5/5Packaging — packaging workflow detected
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
0/5SAST — SAST tool is not run on all commits -- score normalized to 0
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — немає даних
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
0/7.5Vulnerabilities — 19 existing vulnerabilities detected
Використані вхідні дані
sourceopenssf_scorecard
checks_evaluated17
scorecard_versionv5.5.0
checks_inconclusive1
scorecard_aggregate4,6
Виключено з оцінювання (немає даних або не застосовно): signed_releases. Залишкові ваги перенормовано.
Як обчислюється оцінка
35/35Прямі залежності без відомих сповіщень — жодна пряма залежність не має відомих сповіщень
0/25Непрямі залежності без відомих сповіщень — транзитивний набір не відокремлюється від залежностей розробки й тестування в цьому обсязі
0/40Немає задавнених сповіщень — жодне сповіщення не має дати публікації
Використані вхідні дані
sourceosv
advisories20
affected_packages10
assessed_packages664
unassessed_packages32
affected_by_severityhigh 6, moderate 1, low 3
direct_affected_packages0
Виключено з оцінювання (немає даних або не застосовно): Непрямі залежності без відомих сповіщень, Немає задавнених сповіщень. Залишкові ваги перенормовано. Звірено 664 резолвлених залежностей із OSV. 32 не вдалося оцінити — немає резолвленої версії, непідтримувана екосистема або поза межами звітованого переліку пакетів. Цей репозиторій не публікує пакета, який резолвить індекс, тож натомість оцінено граф залежностей репозиторію. Цей граф змішує закріплені версії для розробки й тестування зі справді постачаними залежностями, тож оцінюються лише задекларовані runtime-залежності; транзитивні знахідки подаються як контекст і в оцінку не входять. Досяжність не аналізується.

Готовність до ШІ

Наскільки репозиторій оснащений для розробки та супроводу за участі ШІ-агентів? Незалежний, експериментальний бейдж — вага 0.0, тож він подається окремо і не впливає на загальний індекс здоров'я.

66Помірний · 0% загального індексу
Як обчислюється оцінка
0/45Інструкції для агентів — немає CLAUDE.md / AGENTS.md / правил редактора
15/15Машиночитана документація (llms.txt) — llms.txt наявний
40/40Читабельна історія комітів — намір зазначено у 84 з 99 людських комітів (структурований заголовок або пояснювальний текст)
Використані вхідні дані
has_llms_txtтак
legible_history_share0,848
agent_instruction_files
agent_instruction_max_bytes
Як обчислюється оцінка
0/18Розгортання однією командою
22/22Автоматизовані тести
0/11Конфігурація лінтера / форматера
11/11Статична перевірка типів — apps/docs/tsconfig.json, packages/tmdb/scripts/tsconfig.json, packages/tmdb/tsconfig.json
10/10Відтворюване середовище — lockfile
10/10Підтверджена практика роботи з агентами — 28 з останніх 100 комітів створено агентом або з його зазначенням
8/8Автоматизоване супроводження — 1 з останніх 100 комітів — автоматичні оновлення залежностей
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Використані вхідні дані
has_nixні
has_testsтак
lockfilespnpm-lock.yaml
has_dockerfileні
typed_languageтак
bootstrap_files
has_devcontainerні
has_linter_configні
typecheck_configsapps/docs/tsconfig.json, packages/tmdb/scripts/tsconfig.json, packages/tmdb/tsconfig.json
agent_commit_share0,28
toolchain_manifests
dependency_bot_commit_share0,01
Як обчислюється оцінка
45/45Типізований код — TypeScript (статично типізована)
55/55Керовані розміри файлів — 0/199 файлів вихідного коду понад 60 КБ
Використані вхідні дані
primary_languageTypeScript
largest_source_bytes23 819
source_files_sampled199
oversized_source_files0

Ключові факти

20зірок GitHub
4контриб'юторів
673комітів за останні 12 місяців
5днів від останнього пушу
51релізів
1бас-фактор
0відкритих issue
npmпакетних екосистем

Попередження щодо збору даних

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token
  • deps.dev does not index npm:@lorenzopant/tmdb@1.25.0; advisories assessed against the repository dependency graph instead

Докладніше

Історія зірок і форків 0 ★ / 5 ⇿
0Зірки
5Форки
26Релізи

Коли додано кожну зірку й форк — зібрано з GitHub і згруповано за днями. Кумулятивне зростання розміщено просто над денними додаваннями, з яких воно складається, тож їх видно одне проти одного: рівномірне органічне накопичення виглядає зовсім інакше, ніж різкий короткочасний сплеск. Там, де цю різницю можна виміряти, її подано як автентичність росту.

12345512026-032026-042026-06
Мажорні 0Мінорні 11Патчі 15
OpenSSF Scorecard 4.6 / 10
4.6сукупно

Незалежна, не прив'язана до інструментів оцінка безпеки від відкритого проєкту OpenSSF Scorecard. Кожна перевірка винагороджує практику безпеки, а не інструмент конкретного постачальника. Перевірки, які Scorecard не зміг визначити, позначено н/д і виключено з оцінки безпеки (вони ніколи не зараховуються як нуль).Scorecard v5.5.0 · 2026-07-22 18:14 UTC

10Binary-Artifactsno binaries found in the repo
3Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests7 out of 7 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/13 approved changesets -- score normalized to 0
0Contributorsproject has 0 contributing companies or organizations -- score normalized to 0
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
10Packagingpackaging workflow detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
0SASTSAST tool is not run on all commits -- score normalized to 0
0Security-Policysecurity policy file not detected
н/дSigned-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
0Vulnerabilities19 existing vulnerabilities detected
Усі залежності 696

Повний розв'язаний набір залежностей із графа залежностей GitHub: 0 прямих і 696 непрямих (транзитивних) пакетів. Транзитивне замикання є повним, коли в репозиторії закомічено lockfile.

РеєстрПакетВерсіяЗв'язок
npm@alloc/quick-lru5.2.0непряма
npm@babel/generator8.0.0-rc.3непряма
npm@babel/helper-string-parser7.27.1непряма
npm@babel/helper-string-parser8.0.0-rc.3непряма
npm@babel/helper-validator-identifier7.28.5непряма
npm@babel/helper-validator-identifier8.0.0-rc.3непряма
npm@babel/parser7.29.0непряма
npm@babel/parser8.0.0-rc.3непряма
npm@babel/types7.29.0непряма
npm@babel/types8.0.0-rc.3непряма
npm@bcoe/v8-coverage1.0.2непряма
npm@emnapi/core1.9.1непряма
npm@emnapi/runtime1.8.1непряма
npm@emnapi/wasi-threads1.2.0непряма
npm@esbuild/aix-ppc640.27.3непряма
npm@esbuild/aix-ppc640.28.0непряма
npm@esbuild/android-arm0.27.3непряма
npm@esbuild/android-arm0.28.0непряма
npm@esbuild/android-arm640.27.3непряма
npm@esbuild/android-arm640.28.0непряма
npm@esbuild/android-x640.27.3непряма
npm@esbuild/android-x640.28.0непряма
npm@esbuild/darwin-arm640.27.3непряма
npm@esbuild/darwin-arm640.28.0непряма
npm@esbuild/darwin-x640.27.3непряма
npm@esbuild/darwin-x640.28.0непряма
npm@esbuild/freebsd-arm640.27.3непряма
npm@esbuild/freebsd-arm640.28.0непряма
npm@esbuild/freebsd-x640.27.3непряма
npm@esbuild/freebsd-x640.28.0непряма
npm@esbuild/linux-arm0.27.3непряма
npm@esbuild/linux-arm0.28.0непряма
npm@esbuild/linux-arm640.27.3непряма
npm@esbuild/linux-arm640.28.0непряма
npm@esbuild/linux-ia320.27.3непряма
npm@esbuild/linux-ia320.28.0непряма
npm@esbuild/linux-loong640.27.3непряма
npm@esbuild/linux-loong640.28.0непряма
npm@esbuild/linux-mips64el0.27.3непряма
npm@esbuild/linux-mips64el0.28.0непряма
npm@esbuild/linux-ppc640.27.3непряма
npm@esbuild/linux-ppc640.28.0непряма
npm@esbuild/linux-riscv640.27.3непряма
npm@esbuild/linux-riscv640.28.0непряма
npm@esbuild/linux-s390x0.27.3непряма
npm@esbuild/linux-s390x0.28.0непряма
npm@esbuild/linux-x640.27.3непряма
npm@esbuild/linux-x640.28.0непряма
npm@esbuild/netbsd-arm640.27.3непряма
npm@esbuild/netbsd-arm640.28.0непряма
npm@esbuild/netbsd-x640.27.3непряма
npm@esbuild/netbsd-x640.28.0непряма
npm@esbuild/openbsd-arm640.27.3непряма
npm@esbuild/openbsd-arm640.28.0непряма
npm@esbuild/openbsd-x640.27.3непряма
npm@esbuild/openbsd-x640.28.0непряма
npm@esbuild/openharmony-arm640.27.3непряма
npm@esbuild/openharmony-arm640.28.0непряма
npm@esbuild/sunos-x640.27.3непряма
npm@esbuild/sunos-x640.28.0непряма
npm@esbuild/win32-arm640.27.3непряма
npm@esbuild/win32-arm640.28.0непряма
npm@esbuild/win32-ia320.27.3непряма
npm@esbuild/win32-ia320.28.0непряма
npm@esbuild/win32-x640.27.3непряма
npm@esbuild/win32-x640.28.0непряма
npm@floating-ui/core1.7.4непряма
npm@floating-ui/dom1.7.5непряма
npm@floating-ui/react-dom2.1.7непряма
npm@floating-ui/utils0.2.10непряма
npm@fumadocs/tailwind0.0.5непряма
npm@hono/node-server1.19.14непряма
npm@img/colour1.0.0непряма
npm@img/sharp-darwin-arm640.34.5непряма
npm@img/sharp-darwin-x640.34.5непряма
npm@img/sharp-libvips-darwin-arm641.2.4непряма
npm@img/sharp-libvips-darwin-x641.2.4непряма
npm@img/sharp-libvips-linux-arm1.2.4непряма
npm@img/sharp-libvips-linux-arm641.2.4непряма
npm@img/sharp-libvips-linux-ppc641.2.4непряма
npm@img/sharp-libvips-linux-riscv641.2.4непряма
npm@img/sharp-libvips-linux-s390x1.2.4непряма
npm@img/sharp-libvips-linux-x641.2.4непряма
npm@img/sharp-libvips-linuxmusl-arm641.2.4непряма
npm@img/sharp-libvips-linuxmusl-x641.2.4непряма
npm@img/sharp-linux-arm0.34.5непряма
npm@img/sharp-linux-arm640.34.5непряма
npm@img/sharp-linux-ppc640.34.5непряма
npm@img/sharp-linux-riscv640.34.5непряма
npm@img/sharp-linux-s390x0.34.5непряма
npm@img/sharp-linux-x640.34.5непряма
npm@img/sharp-linuxmusl-arm640.34.5непряма
npm@img/sharp-linuxmusl-x640.34.5непряма
npm@img/sharp-wasm320.34.5непряма
npm@img/sharp-win32-arm640.34.5непряма
npm@img/sharp-win32-ia320.34.5непряма
npm@img/sharp-win32-x640.34.5непряма
npm@jridgewell/gen-mapping0.3.13непряма
npm@jridgewell/remapping2.3.5непряма
npm@jridgewell/resolve-uri3.1.2непряма
npm@jridgewell/sourcemap-codec1.5.5непряма
npm@jridgewell/trace-mapping0.3.31непряма
npm@mdx-js/mdx3.1.1непряма
npm@modelcontextprotocol/sdk1.29.0непряма
npm@modelcontextprotocol/sdk^1.29.0непряма
npm@napi-rs/wasm-runtime1.1.2непряма
npm@next/env16.2.6непряма
npm@next/swc-darwin-arm6416.2.6непряма
npm@next/swc-darwin-x6416.2.6непряма
npm@next/swc-linux-arm64-gnu16.2.6непряма
npm@next/swc-linux-arm64-musl16.2.6непряма
npm@next/swc-linux-x64-gnu16.2.6непряма
npm@next/swc-linux-x64-musl16.2.6непряма
npm@next/swc-win32-arm64-msvc16.2.6непряма
npm@next/swc-win32-x64-msvc16.2.6непряма
npm@orama/orama3.1.18непряма
npm@oxc-project/types0.122.0непряма
npm@oxfmt/binding-android-arm-eabi0.43.0непряма
npm@oxfmt/binding-android-arm640.43.0непряма
npm@oxfmt/binding-darwin-arm640.43.0непряма
npm@oxfmt/binding-darwin-x640.43.0непряма
npm@oxfmt/binding-freebsd-x640.43.0непряма
npm@oxfmt/binding-linux-arm-gnueabihf0.43.0непряма
npm@oxfmt/binding-linux-arm-musleabihf0.43.0непряма
npm@oxfmt/binding-linux-arm64-gnu0.43.0непряма
npm@oxfmt/binding-linux-arm64-musl0.43.0непряма
npm@oxfmt/binding-linux-ppc64-gnu0.43.0непряма
npm@oxfmt/binding-linux-riscv64-gnu0.43.0непряма
npm@oxfmt/binding-linux-riscv64-musl0.43.0непряма
npm@oxfmt/binding-linux-s390x-gnu0.43.0непряма
npm@oxfmt/binding-linux-x64-gnu0.43.0непряма
npm@oxfmt/binding-linux-x64-musl0.43.0непряма
npm@oxfmt/binding-openharmony-arm640.43.0непряма
npm@oxfmt/binding-win32-arm64-msvc0.43.0непряма
npm@oxfmt/binding-win32-ia32-msvc0.43.0непряма
npm@oxfmt/binding-win32-x64-msvc0.43.0непряма
npm@oxlint-tsgolint/darwin-arm640.18.1непряма
npm@oxlint-tsgolint/darwin-x640.18.1непряма
npm@oxlint-tsgolint/linux-arm640.18.1непряма
npm@oxlint-tsgolint/linux-x640.18.1непряма
npm@oxlint-tsgolint/win32-arm640.18.1непряма
npm@oxlint-tsgolint/win32-x640.18.1непряма
npm@oxlint/binding-android-arm-eabi1.58.0непряма
npm@oxlint/binding-android-arm641.58.0непряма
npm@oxlint/binding-darwin-arm641.58.0непряма
npm@oxlint/binding-darwin-x641.58.0непряма
npm@oxlint/binding-freebsd-x641.58.0непряма
npm@oxlint/binding-linux-arm-gnueabihf1.58.0непряма
npm@oxlint/binding-linux-arm-musleabihf1.58.0непряма
npm@oxlint/binding-linux-arm64-gnu1.58.0непряма
npm@oxlint/binding-linux-arm64-musl1.58.0непряма
npm@oxlint/binding-linux-ppc64-gnu1.58.0непряма
npm@oxlint/binding-linux-riscv64-gnu1.58.0непряма
npm@oxlint/binding-linux-riscv64-musl1.58.0непряма
npm@oxlint/binding-linux-s390x-gnu1.58.0непряма
npm@oxlint/binding-linux-x64-gnu1.58.0непряма
npm@oxlint/binding-linux-x64-musl1.58.0непряма
npm@oxlint/binding-openharmony-arm641.58.0непряма
npm@oxlint/binding-win32-arm64-msvc1.58.0непряма
npm@oxlint/binding-win32-ia32-msvc1.58.0непряма
npm@oxlint/binding-win32-x64-msvc1.58.0непряма
npm@polka/url1.0.0-next.29непряма
npm@quansync/fs1.0.0непряма
npm@radix-ui/number1.1.1непряма
npm@radix-ui/primitive1.1.3непряма
npm@radix-ui/react-accordion1.2.12непряма
npm@radix-ui/react-arrow1.1.7непряма
npm@radix-ui/react-collapsible1.1.12непряма
npm@radix-ui/react-collapsible^1.1.12непряма
npm@radix-ui/react-collection1.1.7непряма
npm@radix-ui/react-compose-refs1.1.2непряма
npm@radix-ui/react-context1.1.2непряма
npm@radix-ui/react-dialog1.1.15непряма
npm@radix-ui/react-direction1.1.1непряма
npm@radix-ui/react-dismissable-layer1.1.11непряма
npm@radix-ui/react-focus-guards1.1.3непряма
npm@radix-ui/react-focus-scope1.1.7непряма
npm@radix-ui/react-id1.1.1непряма
npm@radix-ui/react-navigation-menu1.2.14непряма
npm@radix-ui/react-popover1.1.15непряма
npm@radix-ui/react-popper1.2.8непряма
npm@radix-ui/react-portal1.1.9непряма
npm@radix-ui/react-presence1.1.5непряма
npm@radix-ui/react-primitive2.1.3непряма
npm@radix-ui/react-roving-focus1.1.11непряма
npm@radix-ui/react-scroll-area1.2.10непряма
npm@radix-ui/react-slot1.2.3непряма
npm@radix-ui/react-slot1.2.4непряма
npm@radix-ui/react-tabs1.1.13непряма
npm@radix-ui/react-tabs^1.1.13непряма
npm@radix-ui/react-use-callback-ref1.1.1непряма
npm@radix-ui/react-use-controllable-state1.2.2непряма
npm@radix-ui/react-use-effect-event0.0.2непряма
npm@radix-ui/react-use-escape-keydown1.1.1непряма
npm@radix-ui/react-use-layout-effect1.1.1непряма
npm@radix-ui/react-use-previous1.1.1непряма
npm@radix-ui/react-use-rect1.1.1непряма
npm@radix-ui/react-use-size1.1.1непряма
npm@radix-ui/react-visually-hidden1.2.3непряма
npm@radix-ui/rect1.1.1непряма
npm@rolldown/binding-android-arm641.0.0-rc.12непряма
npm@rolldown/binding-darwin-arm641.0.0-rc.12непряма
npm@rolldown/binding-darwin-x641.0.0-rc.12непряма
npm@rolldown/binding-freebsd-x641.0.0-rc.12непряма
npm@rolldown/binding-linux-arm-gnueabihf1.0.0-rc.12непряма
npm@rolldown/binding-linux-arm64-gnu1.0.0-rc.12непряма
npm@rolldown/binding-linux-arm64-musl1.0.0-rc.12непряма
npm@rolldown/binding-linux-ppc64-gnu1.0.0-rc.12непряма
npm@rolldown/binding-linux-s390x-gnu1.0.0-rc.12непряма
npm@rolldown/binding-linux-x64-gnu1.0.0-rc.12непряма
npm@rolldown/binding-linux-x64-musl1.0.0-rc.12непряма
npm@rolldown/binding-openharmony-arm641.0.0-rc.12непряма
npm@rolldown/binding-wasm32-wasi1.0.0-rc.12непряма
npm@rolldown/binding-win32-arm64-msvc1.0.0-rc.12непряма
npm@rolldown/binding-win32-x64-msvc1.0.0-rc.12непряма
npm@rolldown/pluginutils1.0.0-rc.12непряма
npm@shikijs/core4.0.2непряма
npm@shikijs/engine-javascript4.0.2непряма
npm@shikijs/engine-oniguruma4.0.2непряма
npm@shikijs/langs4.0.2непряма
npm@shikijs/primitive4.0.2непряма
npm@shikijs/themes4.0.2непряма
npm@shikijs/types4.0.2непряма
npm@shikijs/vscode-textmate10.0.2непряма
npm@standard-schema/spec1.1.0непряма
npm@swc/helpers0.5.15непряма
npm@tailwindcss/node4.2.2непряма
npm@tailwindcss/oxide4.2.2непряма
npm@tailwindcss/oxide-android-arm644.2.2непряма
npm@tailwindcss/oxide-darwin-arm644.2.2непряма
npm@tailwindcss/oxide-darwin-x644.2.2непряма
npm@tailwindcss/oxide-freebsd-x644.2.2непряма
npm@tailwindcss/oxide-linux-arm-gnueabihf4.2.2непряма
npm@tailwindcss/oxide-linux-arm64-gnu4.2.2непряма
npm@tailwindcss/oxide-linux-arm64-musl4.2.2непряма
npm@tailwindcss/oxide-linux-x64-gnu4.2.2непряма
npm@tailwindcss/oxide-linux-x64-musl4.2.2непряма
npm@tailwindcss/oxide-wasm32-wasi4.2.2непряма
npm@tailwindcss/oxide-win32-arm64-msvc4.2.2непряма
npm@tailwindcss/oxide-win32-x64-msvc4.2.2непряма
npm@tailwindcss/postcss4.2.2непряма
npm@tailwindcss/postcss^4.2.2непряма
npm@takumi-rs/core1.1.2непряма
npm@takumi-rs/core-darwin-arm641.1.2непряма
npm@takumi-rs/core-darwin-x641.1.2непряма
npm@takumi-rs/core-linux-arm64-gnu1.1.2непряма
npm@takumi-rs/core-linux-arm64-musl1.1.2непряма
npm@takumi-rs/core-linux-x64-gnu1.1.2непряма
npm@takumi-rs/core-linux-x64-musl1.1.2непряма
npm@takumi-rs/core-win32-arm64-msvc1.1.2непряма
npm@takumi-rs/core-win32-x64-msvc1.1.2непряма
npm@takumi-rs/helpers1.1.2непряма
npm@takumi-rs/image-response1.1.2непряма
npm@takumi-rs/image-response^1.1.2непряма
npm@takumi-rs/wasm1.1.2непряма
npm@ts-morph/common0.28.1непряма
npm@turbo/darwin-642.9.16непряма
npm@turbo/darwin-arm642.9.16непряма
npm@turbo/linux-642.9.16непряма
npm@turbo/linux-arm642.9.16непряма
npm@turbo/windows-642.9.16непряма
npm@turbo/windows-arm642.9.16непряма
npm@tybys/wasm-util0.10.1непряма
npm@types/chai5.2.3непряма
npm@types/debug4.1.12непряма
npm@types/deep-eql4.0.2непряма
npm@types/estree1.0.8непряма
npm@types/estree-jsx1.0.5непряма
npm@types/hast3.0.4непряма
npm@types/jsesc2.5.1непряма
npm@types/mdast4.0.4непряма
npm@types/mdx2.0.13непряма
npm@types/mdx^2.0.13непряма
npm@types/ms2.1.0непряма
npm@types/node25.3.0непряма
npm@types/node25.5.0непряма
npm@types/node^25.2.3непряма
npm@types/node^25.5.0непряма
npm@types/react19.2.14непряма
npm@types/react^19.2.14непряма
npm@types/react-dom19.2.3непряма
npm@types/react-dom^19.2.3непряма
npm@types/unist2.0.11непряма
npm@types/unist3.0.3непряма
npm@ungap/structured-clone1.3.0непряма
npm@vercel/analytics2.0.1непряма
npm@vercel/analytics^2.0.0непряма
npm@vercel/speed-insights2.0.0непряма
npm@vercel/speed-insights^2.0.0непряма
npm@vitest/coverage-v84.1.2непряма
npm@vitest/coverage-v8^4.1.2непряма
npm@vitest/expect4.1.2непряма
npm@vitest/mocker4.1.2непряма
npm@vitest/pretty-format4.1.2непряма
npm@vitest/runner4.1.2непряма
npm@vitest/snapshot4.1.2непряма
npm@vitest/spy4.1.2непряма
npm@vitest/ui4.1.2непряма
npm@vitest/ui^4.1.2непряма
npm@vitest/utils4.1.2непряма
npmaccepts2.0.0непряма
npmacorn8.16.0непряма
npmacorn-jsx5.3.2непряма
npmajv8.20.0непряма
npmajv-formats3.0.1непряма
npmansis4.2.0непряма
npmargparse2.0.1непряма
npmaria-hidden1.2.6непряма
npmassertion-error2.0.1непряма
npmast-kit3.0.0-beta.1непряма
npmast-v8-to-istanbul1.0.0непряма
npmastring1.9.0непряма
npmbail2.0.2непряма
npmbalanced-match4.0.3непряма
npmbaseline-browser-mapping2.10.0непряма
npmbirpc4.0.0непряма
npmbody-parser2.2.2непряма
npmbrace-expansion5.0.6непряма
npmbytes3.1.2непряма
npmcac7.0.0непряма
npmcall-bind-apply-helpers1.0.2непряма
npmcall-bound1.0.4непряма
npmcaniuse-lite1.0.30001772непряма
npmccount2.0.1непряма
npmchai6.2.2непряма
npmcharacter-entities2.0.2непряма
npmcharacter-entities-html42.1.0непряма
npmcharacter-entities-legacy3.0.0непряма
npmcharacter-reference-invalid2.0.1непряма
npmchokidar5.0.0непряма
npmclass-variance-authority0.7.1непряма
npmclass-variance-authority^0.7.1непряма
npmclient-only0.0.1непряма
npmclsx2.1.1непряма
npmcode-block-writer13.0.3непряма
npmcollapse-white-space2.1.0непряма
npmcomma-separated-tokens2.0.3непряма
npmcompute-scroll-into-view3.1.1непряма
npmcontent-disposition1.1.0непряма
npmcontent-type1.0.5непряма
npmconvert-source-map2.0.0непряма
npmcookie0.7.2непряма
npmcookie-signature1.2.2непряма
npmcors2.8.6непряма
npmcross-spawn7.0.6непряма
npmcsstype3.2.3непряма
npmdebug4.4.3непряма
npmdecode-named-character-reference1.3.0непряма
npmdefu6.1.7непряма
npmdepd2.0.0непряма
npmdequal2.0.3непряма
npmdetect-libc2.1.2непряма
npmdetect-node-es1.1.0непряма
npmdevlop1.1.0непряма
npmdotenv16.6.1непряма
npmdotenv^16.5.0непряма
npmdts-resolver2.1.3непряма
npmdunder-proto1.0.1непряма
npmee-first1.1.1непряма
npmempathic2.0.0непряма
npmencodeurl2.0.0непряма
npmenhanced-resolve5.19.0непряма
npmentities6.0.1непряма
npmes-define-property1.0.1непряма
npmes-errors1.3.0непряма
npmes-module-lexer2.0.0непряма
npmes-object-atoms1.1.1непряма
npmesast-util-from-estree2.0.0непряма
npmesast-util-from-js2.0.1непряма
npmesbuild0.27.3непряма
npmesbuild0.28.0непряма
npmescape-html1.0.3непряма
npmescape-string-regexp5.0.0непряма
npmestree-util-attach-comments3.0.0непряма
npmestree-util-build-jsx3.0.1непряма
npmestree-util-is-identifier-name3.0.0непряма
npmestree-util-scope1.0.0непряма
npmestree-util-to-js2.0.0непряма
npmestree-util-value-to-estree3.5.0непряма
npmestree-util-visit2.0.0непряма
npmestree-walker3.0.3непряма
npmetag1.8.1непряма
npmeventsource3.0.7непряма
npmeventsource-parser3.0.8непряма
npmexpect-type1.3.0непряма
npmexpress5.2.1непряма
npmexpress-rate-limit8.5.1непряма
npmextend3.0.2непряма
npmfast-deep-equal3.1.3непряма
npmfast-uri3.1.2непряма
npmfdir6.5.0непряма
npmfflate0.8.2непряма
npmfinalhandler2.1.1непряма
npmflatted3.4.2непряма
npmforwarded0.2.0непряма
npmframer-motion12.38.0непряма
npmframer-motion^12.38.0непряма
npmfresh2.0.0непряма
npmfsevents2.3.3непряма
npmfumadocs-core16.8.10непряма
npmfumadocs-mdx15.0.4непряма
npmfumadocs-typescript5.2.4непряма
npmfumadocs-typescript^5.2.4непряма
npmfumadocs-ui16.8.10непряма
npmfunction-bind1.1.2непряма
npmget-intrinsic1.3.0непряма
npmget-nonce1.0.1непряма
npmget-proto1.0.1непряма
npmget-tsconfig4.13.6непряма
npmget-tsconfig4.13.7непряма
npmgithub-slugger2.0.0непряма
npmgopd1.2.0непряма
npmgraceful-fs4.2.11непряма
npmhas-flag4.0.0непряма
npmhas-symbols1.1.0непряма
npmhasown2.0.3непряма
npmhast-util-from-parse58.0.3непряма
npmhast-util-parse-selector4.0.0непряма
npmhast-util-raw9.1.0непряма
npmhast-util-to-estree3.1.3непряма
npmhast-util-to-html9.0.5непряма
npmhast-util-to-jsx-runtime2.3.6непряма
npmhast-util-to-parse58.0.1непряма
npmhast-util-whitespace3.0.0непряма
npmhastscript9.0.1непряма
npmhono4.12.23непряма
npmhookable6.1.0непряма
npmhtml-escaper2.0.2непряма
npmhtml-void-elements3.0.0непряма
npmhttp-errors2.0.1непряма
npmiconv-lite0.7.2непряма
npmimport-without-cache0.2.5непряма
npminherits2.0.4непряма
npminline-style-parser0.2.7непряма
npmip-address10.2.0непряма
npmipaddr.js1.9.1непряма
npmis-alphabetical2.0.1непряма
npmis-alphanumerical2.0.1непряма
npmis-decimal2.0.1непряма
npmis-hexadecimal2.0.1непряма
npmis-plain-obj4.1.0непряма
npmis-promise4.0.0непряма
npmisexe2.0.0непряма
npmistanbul-lib-coverage3.2.2непряма
npmistanbul-lib-report3.0.1непряма
npmistanbul-reports3.2.0непряма
npmjiti2.6.1непряма
npmjose6.2.3непряма
npmjs-tokens10.0.0непряма
npmjs-yaml4.1.1непряма
npmjsesc3.1.0непряма
npmjson-schema-traverse1.0.0непряма
npmjson-schema-typed8.0.2непряма
npmlefthook2.1.4непряма
npmlefthook-darwin-arm642.1.4непряма
npmlefthook-darwin-x642.1.4непряма
npmlefthook-freebsd-arm642.1.4непряма
npmlefthook-freebsd-x642.1.4непряма
npmlefthook-linux-arm642.1.4непряма
npmlefthook-linux-x642.1.4непряма
npmlefthook-openbsd-arm642.1.4непряма
npmlefthook-openbsd-x642.1.4непряма
npmlefthook-windows-arm642.1.4непряма
npmlefthook-windows-x642.1.4непряма
npmlightningcss1.32.0непряма
npmlightningcss-android-arm641.32.0непряма
npmlightningcss-darwin-arm641.32.0непряма
npmlightningcss-darwin-x641.32.0непряма
npmlightningcss-freebsd-x641.32.0непряма
npmlightningcss-linux-arm-gnueabihf1.32.0непряма
npmlightningcss-linux-arm64-gnu1.32.0непряма
npmlightningcss-linux-arm64-musl1.32.0непряма
npmlightningcss-linux-x64-gnu1.32.0непряма
npmlightningcss-linux-x64-musl1.32.0непряма
npmlightningcss-win32-arm64-msvc1.32.0непряма
npmlightningcss-win32-x64-msvc1.32.0непряма
npmlongest-streak3.1.0непряма
npmlucide-react1.14.0непряма
npmlucide-react1.7.0непряма
npmlucide-react^1.7.0непряма
npmmagic-string0.30.21непряма
npmmagicast0.5.2непряма
npmmake-dir4.0.0непряма
npmmarkdown-extensions2.0.0непряма
npmmarkdown-table3.0.4непряма
npmmath-intrinsics1.1.0непряма
npmmdast-util-find-and-replace3.0.2непряма
npmmdast-util-from-markdown2.0.3непряма
npmmdast-util-gfm3.1.0непряма
npmmdast-util-gfm-autolink-literal2.0.1непряма
npmmdast-util-gfm-footnote2.1.0непряма
npmmdast-util-gfm-strikethrough2.0.0непряма
npmmdast-util-gfm-table2.0.0непряма
npmmdast-util-gfm-task-list-item2.0.0непряма
npmmdast-util-mdx3.0.0непряма
npmmdast-util-mdx-expression2.0.1непряма
npmmdast-util-mdx-jsx3.2.0непряма
npmmdast-util-mdxjs-esm2.0.1непряма
npmmdast-util-phrasing4.1.0непряма
npmmdast-util-to-hast13.2.1непряма
npmmdast-util-to-markdown2.1.2непряма
npmmdast-util-to-string4.0.0непряма
npmmedia-typer1.1.0непряма
npmmerge-descriptors2.0.0непряма
npmmicromark4.0.2непряма
npmmicromark-core-commonmark2.0.3непряма
npmmicromark-extension-gfm3.0.0непряма
npmmicromark-extension-gfm-autolink-literal2.1.0непряма
npmmicromark-extension-gfm-footnote2.1.0непряма
npmmicromark-extension-gfm-strikethrough2.1.0непряма
npmmicromark-extension-gfm-table2.1.1непряма
npmmicromark-extension-gfm-tagfilter2.0.0непряма
npmmicromark-extension-gfm-task-list-item2.1.0непряма
npmmicromark-extension-mdx-expression3.0.1непряма
npmmicromark-extension-mdx-jsx3.0.2непряма
npmmicromark-extension-mdx-md2.0.0непряма
npmmicromark-extension-mdxjs3.0.0непряма
npmmicromark-extension-mdxjs-esm3.0.0непряма
npmmicromark-factory-destination2.0.1непряма
npmmicromark-factory-label2.0.1непряма
npmmicromark-factory-mdx-expression2.0.3непряма
npmmicromark-factory-space2.0.1непряма
npmmicromark-factory-title2.0.1непряма
npmmicromark-factory-whitespace2.0.1непряма
npmmicromark-util-character2.1.1непряма
npmmicromark-util-chunked2.0.1непряма
npmmicromark-util-classify-character2.0.1непряма
npmmicromark-util-combine-extensions2.0.1непряма
npmmicromark-util-decode-numeric-character-reference2.0.2непряма
npmmicromark-util-decode-string2.0.1непряма
npmmicromark-util-encode2.0.1непряма
npmmicromark-util-events-to-acorn2.0.3непряма
npmmicromark-util-html-tag-name2.0.1непряма
npmmicromark-util-normalize-identifier2.0.1непряма
npmmicromark-util-resolve-all2.0.1непряма
npmmicromark-util-sanitize-uri2.0.1непряма
npmmicromark-util-subtokenize2.1.0непряма
npmmicromark-util-symbol2.0.1непряма
npmmicromark-util-types2.0.2непряма
npmmime-db1.54.0непряма
npmmime-types3.0.2непряма
npmminimatch10.2.5непряма
npmmotion12.38.0непряма
npmmotion-dom12.38.0непряма
npmmotion-utils12.36.0непряма
npmmrmime2.0.1непряма
npmms2.1.3непряма
npmnanoid3.3.12непряма
npmnegotiator1.0.0непряма
npmnext16.2.6непряма
npmnext-themes0.4.6непряма
npmobject-assign4.1.1непряма
npmobject-inspect1.13.4непряма
npmobug2.1.1непряма
npmon-finished2.4.1непряма
npmonce1.4.0непряма
npmoniguruma-parser0.12.1непряма
npmoniguruma-to-es4.3.4непряма
npmoxfmt0.43.0непряма
npmoxlint1.58.0непряма
npmoxlint-tsgolint0.18.1непряма
npmparse-entities4.0.2непряма
npmparse57.3.0непряма
npmparseurl1.3.3непряма
npmpath-browserify1.0.1непряма
npmpath-key3.1.1непряма
npmpath-to-regexp8.4.2непряма
npmpathe2.0.3непряма
npmpicocolors1.1.1непряма
npmpicomatch4.0.4непряма
npmpkce-challenge5.0.1непряма
npmpostcss8.5.15непряма
npmpostcss^8.5.6непряма
npmproperty-information7.1.0непряма
npmproxy-addr2.0.7непряма
npmqs6.15.2непряма
npmquansync1.0.0непряма
npmrange-parser1.2.1непряма
npmraw-body3.0.2непряма
npmreact19.2.6непряма
npmreact^19.2.6непряма
npmreact-dom19.2.5непряма
npmreact-dom^19.2.5непряма
npmreact-remove-scroll2.7.2непряма
npmreact-remove-scroll-bar2.3.8непряма
npmreact-style-singleton2.2.3непряма
npmreaddirp5.0.0непряма
npmrecma-build-jsx1.0.0непряма
npmrecma-jsx1.0.1непряма
npmrecma-parse1.0.0непряма
npmrecma-stringify1.0.0непряма
npmregex6.1.0непряма
npmregex-recursion6.0.2непряма
npmregex-utilities2.3.0непряма
npmrehype-raw7.0.0непряма
npmrehype-recma1.0.0непряма
npmremark15.0.1непряма
npmremark-gfm4.0.1непряма
npmremark-mdx3.1.1непряма
npmremark-parse11.0.0непряма
npmremark-rehype11.1.2непряма
npmremark-stringify11.0.0непряма
npmrequire-from-string2.0.2непряма
npmresolve-pkg-maps1.0.0непряма
npmrolldown1.0.0-rc.12непряма
npmrolldown-plugin-dts0.23.2непряма
npmrouter2.2.0непряма
npmsafer-buffer2.1.2непряма
npmscheduler0.27.0непряма
npmscroll-into-view-if-needed3.1.0непряма
npmsemver7.7.4непряма
npmsend1.2.1непряма
npmserve-static2.2.1непряма
npmsetprototypeof1.2.0непряма
npmsharp0.34.5непряма
npmshebang-command2.0.0непряма
npmshebang-regex3.0.0непряма
npmshiki4.0.2непряма
npmside-channel1.1.0непряма
npmside-channel-list1.0.1непряма
npmside-channel-map1.0.1непряма
npmside-channel-weakmap1.0.2непряма
npmsiginfo2.0.0непряма
npmsirv3.0.2непряма
npmsource-map0.7.6непряма
npmsource-map-js1.2.1непряма
npmspace-separated-tokens2.0.2непряма
npmstackback0.0.2непряма
npmstatuses2.0.2непряма
npmstd-env4.0.0непряма
npmstringify-entities4.0.4непряма
npmstyle-to-js1.1.21непряма
npmstyle-to-object1.0.14непряма
npmstyled-jsx5.1.6непряма
npmsupports-color7.2.0непряма
npmtailwind-merge3.6.0непряма
npmtailwind-merge^3.6.0непряма
npmtailwindcss4.2.2непряма
npmtailwindcss^4.2.2непряма
npmtakumi-js1.1.2непряма
npmtapable2.3.0непряма
npmtinybench2.9.0непряма
npmtinyexec1.0.4непряма
npmtinyexec1.1.2непряма
npmtinyglobby0.2.15непряма
npmtinyglobby0.2.16непряма
npmtinypool2.1.0непряма
npmtinyrainbow3.1.0непряма
npmtoidentifier1.0.1непряма
npmtotalist3.0.1непряма
npmtree-kill1.2.2непряма
npmtrim-lines3.0.1непряма
npmtrough2.2.0непряма
npmts-morph27.0.2непряма
npmts-morph^27.0.2непряма
npmtsdown0.21.7непряма
npmtsdown^0.21.7непряма
npmtslib2.8.1непряма
npmtsx4.21.0непряма
npmtsx^4.21.0непряма
npmturbo2.9.16непряма
npmtype-is2.0.1непряма
npmtypescript5.9.3непряма
npmtypescript6.0.3непряма
npmtypescript^5.8.3непряма
npmtypescript^6.0.3непряма
npmunconfig-core7.5.0непряма
npmundici-types7.18.2непряма
npmunified11.0.5непряма
npmunist-util-is6.0.1непряма
npmunist-util-position5.0.0непряма
npmunist-util-position-from-estree2.0.0непряма
npmunist-util-remove-position5.0.0непряма
npmunist-util-stringify-position4.0.0непряма
npmunist-util-visit5.1.0непряма
npmunist-util-visit-parents6.0.2непряма
npmunpipe1.0.0непряма
npmunrun0.2.34непряма
npmuse-callback-ref1.3.3непряма
npmuse-sidecar1.1.3непряма
npmvary1.1.2непряма
npmvfile6.0.3непряма
npmvfile-location5.0.3непряма
npmvfile-message4.0.3непряма
npmvite8.0.5непряма
npmvite^8.0.5непряма
npmvitest4.1.2непряма
npmvitest^4.1.2непряма
npmweb-namespaces2.0.1непряма
npmwhich2.0.2непряма
npmwhy-is-node-running2.3.0непряма
npmwrappy1.0.2непряма
npmzod4.4.3непряма
npmzod^4.4.3непряма
npmzod-to-json-schema3.25.2непряма
npmzwitch2.0.4непряма
Сповіщення про залежності 10

Цей репозиторій не публікує пакета, який розпізнає індекс, тож оцінено його власний граф залежностей — 664 пакетів, серед яких є й піниї розробки та тестування, що ніколи не постачаються: 10 мають відомі сповіщення, з них 0 прямі. 32 не вдалося оцінити — немає резолвленої версії, непідтримувана екосистема або поза наведеним переліком пакетів.

ПакетВерсіяЗв'язокКритичністьСповіщеньВиправлено в
brace-expansion5.0.6непрямависока15.0.7
fast-uri3.1.2непрямависока24.1.1
hono4.12.23непрямависока84.12.27
js-yaml4.1.1непрямависока24.3.0
sharp0.34.5непрямависока10.35.0
vite8.0.5непрямависока28.0.16
@hono/node-server1.19.14непрямапомірна12.0.5
body-parser2.2.2непряманизька12.3.0
esbuild0.27.3непряманизька10.28.1
esbuild0.28.0непряманизька10.28.1

Сповіщення означає, що версія, записана в графі залежностей, потрапляє в уражений діапазон. Досяжність не аналізується, а граф містить піниї розробки й тестування — знахідка може стосуватися інструментів, а не поставленого коду.

Звіт у форматі JSON машиночитний
{
  "data": {
    "repo": {
      "topics": [
        "api",
        "tmdb",
        "tmdb-api",
        "typescript",
        "wrapper",
        "wrapper-api",
        "tmdb-client",
        "tmdb-rest-api",
        "tmdb-ts",
        "typesafe"
      ],
      "is_fork": false,
      "size_kb": 1759,
      "has_wiki": true,
      "homepage": "https://tmdb.lorenzopant.dev",
      "languages": {
        "CSS": 475,
        "MDX": 540798,
        "JavaScript": 3607,
        "TypeScript": 799674
      },
      "pushed_at": "2026-07-17T13:38:02Z",
      "created_at": "2025-07-02T20:25:04Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-17T13:38:55Z",
      "description": "TMDB API wrapper for Typescript projects.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MIT",
      "default_branch": "main",
      "license_spdx_raw": "MIT",
      "primary_language": "TypeScript",
      "significant_languages": [
        "TypeScript",
        "MDX"
      ]
    },
    "owner": {
      "blog": null,
      "name": "@lorenzopant",
      "type": "Organization",
      "login": "lorenzopant",
      "company": null,
      "location": "Italy",
      "followers": 0,
      "avatar_url": "https://avatars.githubusercontent.com/u/219037978?v=4",
      "created_at": "2025-07-02T20:23:39Z",
      "is_verified": null,
      "public_repos": 2,
      "account_age_days": 384
    },
    "license": {
      "state": "standard",
      "spdx_id": "MIT",
      "raw_spdx": "MIT",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v1.25.0",
          "kind": "minor",
          "published_at": "2026-07-17T13:38:38Z"
        },
        {
          "tag": "v1.24.0",
          "kind": "minor",
          "published_at": "2026-07-10T18:08:31Z"
        },
        {
          "tag": "v1.23.0",
          "kind": "minor",
          "published_at": "2026-07-10T12:34:08Z"
        },
        {
          "tag": "v1.22.2",
          "kind": "patch",
          "published_at": "2026-06-06T10:16:03Z"
        },
        {
          "tag": "v1.22.1",
          "kind": "patch",
          "published_at": "2026-05-15T18:31:26Z"
        },
        {
          "tag": "v1.22.0",
          "kind": "minor",
          "published_at": "2026-05-15T18:22:45Z"
        },
        {
          "tag": "v1.21.3",
          "kind": "patch",
          "published_at": "2026-05-09T13:05:42Z"
        },
        {
          "tag": "v1.21.2",
          "kind": "patch",
          "published_at": "2026-05-02T22:13:57Z"
        },
        {
          "tag": "v1.21.1",
          "kind": "patch",
          "published_at": "2026-04-18T11:27:50Z"
        },
        {
          "tag": "v1.21.0",
          "kind": "minor",
          "published_at": "2026-04-15T19:59:51Z"
        },
        {
          "tag": "v1.20.2",
          "kind": "patch",
          "published_at": "2026-04-13T17:26:18Z"
        },
        {
          "tag": "v1.20.1",
          "kind": "patch",
          "published_at": "2026-04-07T19:42:23Z"
        },
        {
          "tag": "v1.20.0",
          "kind": "minor",
          "published_at": "2026-04-07T12:03:45Z"
        },
        {
          "tag": "v1.19.0",
          "kind": "minor",
          "published_at": "2026-04-05T11:21:46Z"
        },
        {
          "tag": "v1.18.1",
          "kind": "patch",
          "published_at": "2026-04-04T15:51:00Z"
        },
        {
          "tag": "v1.18.0",
          "kind": "minor",
          "published_at": "2026-04-01T16:57:01Z"
        },
        {
          "tag": "v1.17.5",
          "kind": "patch",
          "published_at": "2026-03-31T19:52:40Z"
        },
        {
          "tag": "v1.17.4",
          "kind": "patch",
          "published_at": "2026-03-30T21:03:23Z"
        },
        {
          "tag": "v1.17.3",
          "kind": "patch",
          "published_at": "2026-03-29T17:12:06Z"
        },
        {
          "tag": "v1.17.2",
          "kind": "patch",
          "published_at": "2026-03-28T12:37:09Z"
        },
        {
          "tag": "v1.17.1",
          "kind": "patch",
          "published_at": "2026-03-28T11:53:15Z"
        },
        {
          "tag": "v1.17.0",
          "kind": "minor",
          "published_at": "2026-03-27T22:29:22Z"
        },
        {
          "tag": "v1.16.0",
          "kind": "minor",
          "published_at": "2026-03-23T22:07:34Z"
        },
        {
          "tag": "v1.15.1",
          "kind": "patch",
          "published_at": "2026-03-21T18:40:34Z"
        },
        {
          "tag": "v1.15.0",
          "kind": "minor",
          "published_at": "2026-03-21T10:58:51Z"
        },
        {
          "tag": "v1.14.1",
          "kind": "patch",
          "published_at": "2026-03-20T20:54:50Z"
        },
        {
          "tag": "v1.14.0",
          "kind": "minor",
          "published_at": "2026-03-20T18:35:08Z"
        },
        {
          "tag": "v1.13.1",
          "kind": "patch",
          "published_at": "2026-03-14T17:26:02Z"
        },
        {
          "tag": "v1.13.0",
          "kind": "minor",
          "published_at": "2026-03-13T21:03:37Z"
        },
        {
          "tag": "v1.12.0",
          "kind": "minor",
          "published_at": "2026-03-13T20:30:06Z"
        },
        {
          "tag": "v1.11.0",
          "kind": "minor",
          "published_at": "2026-03-10T20:02:23Z"
        },
        {
          "tag": "v1.10.0",
          "kind": "minor",
          "published_at": "2026-03-08T20:57:37Z"
        },
        {
          "tag": "v1.9.0",
          "kind": "minor",
          "published_at": "2026-03-08T15:40:35Z"
        },
        {
          "tag": "v1.8.0",
          "kind": "minor",
          "published_at": "2026-03-08T10:38:33Z"
        },
        {
          "tag": "v1.7.0",
          "kind": "minor",
          "published_at": "2026-03-08T09:26:40Z"
        },
        {
          "tag": "v1.6.1",
          "kind": "patch",
          "published_at": "2026-03-07T18:27:46Z"
        },
        {
          "tag": "v1.6.0",
          "kind": "minor",
          "published_at": "2026-03-07T18:07:59Z"
        },
        {
          "tag": "v1.5.0",
          "kind": "minor",
          "published_at": "2026-03-07T15:06:43Z"
        },
        {
          "tag": "v1.4.0",
          "kind": "minor",
          "published_at": "2026-03-05T20:38:26Z"
        },
        {
          "tag": "v1.3.0",
          "kind": "minor",
          "published_at": "2026-03-01T19:05:25Z"
        },
        {
          "tag": "v1.2.0",
          "kind": "minor",
          "published_at": "2026-02-26T19:13:33Z"
        },
        {
          "tag": "v1.2.0-beta.0",
          "kind": "prerelease",
          "published_at": "2026-02-22T12:48:48Z"
        },
        {
          "tag": "v1.1.7",
          "kind": "patch",
          "published_at": "2026-02-21T15:28:15Z"
        },
        {
          "tag": "v1.1.5",
          "kind": "patch",
          "published_at": "2026-02-18T22:19:53Z"
        },
        {
          "tag": "v1.1.3",
          "kind": "patch",
          "published_at": "2026-02-17T21:11:49Z"
        },
        {
          "tag": "v1.1.1",
          "kind": "patch",
          "published_at": "2026-02-07T12:03:56Z"
        },
        {
          "tag": "v1.0.19",
          "kind": "patch",
          "published_at": "2026-02-07T10:41:51Z"
        },
        {
          "tag": "v1.0.17",
          "kind": "patch",
          "published_at": "2026-02-07T10:00:36Z"
        },
        {
          "tag": "v1.0.14",
          "kind": "patch",
          "published_at": "2026-02-06T23:36:56Z"
        },
        {
          "tag": "0.0.2",
          "kind": "patch",
          "published_at": "2026-02-06T23:21:16Z"
        },
        {
          "tag": "0.0.1",
          "kind": "patch",
          "published_at": "2026-02-06T23:02:37Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "ff370bd464e6f45d6c299875074b45c084d20a1f",
          "body": null,
          "is_bot": false,
          "headline": "🚀 chore: release v1.25.0",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-17T13:37:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "42d8f370b3d2a051a63a93ff4dad12391c445be7",
          "body": null,
          "is_bot": false,
          "headline": "chore: udpated changelog",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-17T13:37:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "85a4a8b09511dd051533224af5f8b196b4099dac",
          "body": "feat(tmdb): standalone /image subpath export for ImageAPI",
          "is_bot": false,
          "headline": "Merge pull request #141 from lorenzopant/feat/image-subpath-export",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-17T13:33:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "551ef0b7383ba111973aed3eb87dd0b77cec4942",
          "body": "Consumers who only need the image URL builder can now import it without\npulling in the TMDB client or any endpoint code:\n\n    import { ImageAPI } from \"@lorenzopant/tmdb/image\";\n\nThe new `src/image.ts` entry is bundled separately by tsdown, producing a\n~3.4 kB chunk with no client/endpoint/fetch cod\n[…]\n package.json: `./image` subpath export + `sideEffects: false`\n- README / llms.txt / llms-full.txt: document the standalone import\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(tmdb): add standalone /image subpath export for ImageAPI",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-17T13:28:18Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "778eff70440c43a9f1ed80a21a34c80e343d9c8f",
          "body": "perf(docs): serve documentation search index statically",
          "is_bot": false,
          "headline": "Merge pull request #139 from lorenzopant/perf/static-docs-search",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-15T16:08:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "331c595f6e171160a304c907789c979e5b0588ae",
          "body": "…tion-test\n\ntest(tmdb): fix flaky changes assertion in TV details integration test",
          "is_bot": false,
          "headline": "Merge pull request #140 from lorenzopant/fix/flaky-tv-changes-integra…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-15T11:45:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dc1fe0e70e72ac53002fb8e80453b8db596bd258",
          "body": "…n test\n\nThe `changes` append reports edits within a default ~24h window, so for a\nlong-finished show like 1396 the array is legitimately empty on days with\nno edits — making `.toBeGreaterThan(0)` flaky against the live API.\n\nAssert the contract (defined + array + length >= 0) instead of a volatile\nnon-zero count, consistent with the rest of the integration suite.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "test(tmdb): stop asserting non-empty changes in TV details integratio…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-15T11:43:53Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "722887bb78eff0a06d0275f0adb9005b403365d9",
          "body": "/api/search ran server-side Orama on every (debounced) keystroke — one\nServerless Function invocation + Edge Request per query — making it a\ntop-billed route on Vercel.\n\nSwitch to fumadocs' static search: export `staticGET` (prerendered index,\ncached forever) and set the client to `type: \"static\"`, \n[…]\nrely client-side. The route now\nbuilds as ○ (Static) instead of ƒ (Dynamic), removing per-keystroke\ninvocations and edge requests.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "perf(docs): serve search index statically to cut Vercel usage",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-15T11:39:58Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "35ee5d3e2626b4de44f1bfdcf522abef5f057f05",
          "body": null,
          "is_bot": false,
          "headline": "🚀 chore: release v1.24.0",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T18:07:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "76b23ee7c984020988910c8dc3f59e7635dccaad",
          "body": null,
          "is_bot": false,
          "headline": "docs: update changelog for 1.24.0 — export ImageAPI",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T18:07:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "92d341a86d9d9cd11c80982fdcf23300e8f858d2",
          "body": "feat(tmdb): export ImageAPI for token-free image URL building",
          "is_bot": false,
          "headline": "Merge pull request #138 from lorenzopant/feat/export-image-api",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T18:03:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3da9c6abaaa68a9c11c62dfa8719bcc13f8f1b83",
          "body": "ImageAPI never required an access token internally, but it was not\nexported from the package root, forcing consumers to construct a full\nTMDB instance (and pass a token) just to build a poster/backdrop URL.",
          "is_bot": false,
          "headline": "feat(tmdb): export ImageAPI for token-free image URL building",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T18:00:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "addfde94f1216a5abcfae57023326ec3d4af4fc5",
          "body": null,
          "is_bot": false,
          "headline": "🚀 chore: release v1.23.0",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T12:33:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "95a1595218c16b2cad2071778ad588ef57aed5ac",
          "body": null,
          "is_bot": false,
          "headline": "chore: udpated changelog 1.23.0",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T12:33:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1f59248a3af894ccd78406a720dfd127f2e05412",
          "body": "fix(tmdb): treat ChangeItem value/original_value as opaque in drift check",
          "is_bot": false,
          "headline": "Merge pull request #137 from lorenzopant/fix/tmdb-changes-value-opaque",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T12:28:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2ddd2b1cdd5a38a23a95bccfc4474ce8928436e6",
          "body": "…heck\n\nTMDB documents no schema for these fields and their shape varies per\nchange `key` (images, videos, cast, episode groups, ...) and by the day\nas TMDB ships new change kinds. The types already model this via a bare\nobject|string, but keyTree kept recursing into the live payload, so any\nnew nest\n[…]\nalse-positive\ndrift (movies.changes/tv_series.changes/tv_series.details+append were\nfailing on title_logo/poster additions). keyTree now stops at those two\nkeys, matching the type side's own boundary.",
          "is_bot": false,
          "headline": "fix(tmdb): treat ChangeItem value/original_value as opaque in drift c…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T12:21:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1256c2e906be287574f95f58536d2ceeb1632ea0",
          "body": "fix(tmdb): resolve schema drift for softcore/adult flags and append_to_response id gaps",
          "is_bot": false,
          "headline": "Merge pull request #136 from lorenzopant/fix/tmdb-schema-drift-softcore",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T12:10:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f28a0063fbe555ef5eda183ee34a1ff060630626",
          "body": "Most field docs come from <AutoTypeTable>, which resolves live from the .ts\nsource — those update themselves on rebuild. But a few spots are hand-written\nand had gone stale against the type changes:\n\n- DiscoverTVResultItem / FindMovieResultItem / FindTVResultItem: manual\n  TypeTables missing the new\n[…]\nid field and media_type discriminator.\n\nVerified with a full `next build` — all AutoTypeTable references still\nresolve and no prerender errors.\n\nCo-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs(tmdb): sync hand-written docs with the schema-drift type changes",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T12:05:15Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "d37245940836fb2ed0844ff56cf067126ec20854",
          "body": "…o_3166_1\n\nThe type-tree fix folded TVImageItem into the base ImageItem (iso_3166_1 is\nnow a universal optional field, not TV-only), so the type itself was\ndeleted. Docs still referenced it: the tv-series.mdx AutoTypeTable resolved\nit live and broke the Next.js prerender (`TVImageItem ... doesn't exist`),\nand images.mdx had a now-stale example. Removed the dead subsection and\nupdated the example to the current shape.\n\nCo-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs(tmdb): drop TVImageItem references now that ImageItem carries is…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T10:50:47Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "2ae50c234fd3b9f3c018e41c009913351f89cae0",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into fix/tmdb-schema-drift-softcore",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T10:44:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e2c5dec581e3966ec9a2bf37fe2d9c741c0cb531",
          "body": "feat(tmdb): schema-drift detection",
          "is_bot": false,
          "headline": "Merge pull request #135 from lorenzopant/feat/schema-drift-detection",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T10:43:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bd055f2c7b758ad300ca8b93590972bd9afe4e77",
          "body": "… debt\n\nThe known_for-optional change broke a test's `brad!.known_for.length`\naccess under strict type-check (TS2532) — this was the actual CI-blocking\nerror. Fixed with optional chaining.\n\nAlso cleans up the handful of real `oxlint --type-aware --type-check`\nfindings that were sitting in source (no\n[…]\nly — they were invisible until this PR's diff\nwas the first to invalidate turbo's lint:check cache since --type-aware\nlanded in .oxlintrc.json.\n\nCo-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(tmdb): fix lint:check regression and pre-existing type-aware lint…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T10:38:20Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "8e7d4b534f672f7d41a4b7f218360e14901348d8",
          "body": null,
          "is_bot": false,
          "headline": "fix(tmdb): correct packageRoot resolution in gen-type-tree script",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T10:26:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "647e927b5453c2dbf78079329549e48413fd3565",
          "body": "…append_to_response id gaps\n\nTMDB rolled out a new `softcore` boolean alongside `adult` across movie/tv\nobjects, added `iso_3166_1` to image entries, `episode_type` to episodes,\n`ads`/`free` watch-provider tiers, and a few other fields the types didn't\nmodel yet. Verified each against the live API b\n[…]\nsely-typed `value`/`original_value` fields\nalone — those are deliberately untyped as `object | string` since their\nshape varies per change key.\n\nCo-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(tmdb): resolve schema drift for softcore/adult content flags and …",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T09:39:48Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "e3c18f42f8f84963cda7b3a3fa3a746e06d6daf8",
          "body": "scripts/ sits outside the package tsconfig (rootDir: \"src\"), so the editor\nopened gen-type-tree.ts in an inferred project with no Node types and the wrong\nmodule resolution — node:fs, node:path, and import.meta.dirname all errored.\n\nAdd scripts/tsconfig.json (rootDir at the package root so it can import ../src,\nNode types, noEmit) and run it as part of `typecheck` so script type errors are\ncaught in CI too.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(tmdb): add scripts tsconfig so gen-type-tree.ts type-resolves",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T08:47:44Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "ff06182b1ca26bfb4202ad2b7b0005451fff9076",
          "body": "…d snapshot\n\nThe drift job previously compared the live TMDB response against a manually\nblessed key-tree snapshot, i.e. \"did the API change since we last blessed it\".\nThe TS model types in src/types were never consulted, so they could silently\nfall out of sync with the API with no signal.\n\nMake the\n[…]\n gen:type-tree.\n- drift.yml: remediation is now \"edit src/types\"; no -u bless step.\n- remove the committed __snapshots__ baseline.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(tmdb): drift-check live API against TS types instead of a blesse…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T08:36:14Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "8b0ac2afd1a5171e1bb9705441e7bd48054d33f3",
          "body": "listForRepo only fetched the first page (per_page: 100), so the\n\"find existing drift issue\" lookup missed the issue once the repo had\n>100 open issues — spawning a duplicate drift issue every run. Use\ngithub.paginate to walk all pages before matching by title.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(ci): paginate open issues in drift workflow",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T07:59:16Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "5ee7c0f5f6257a58966675a9cf38275300a2bbff",
          "body": "The v3 TMDB constructor enumerated options passed to ApiClient but\nomitted `retry`, so `new TMDB(token, { retry: true })` silently did\nnothing (v4 forwarded it via spread). Forward it.\n\nEnable rate_limit + retry for the scheduled drift run so transient\nfailures / 429s across its large batch of live HTTP calls don't surface\nas noisy, false-positive drift alerts.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(tmdb): forward retry option and harden drift run",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T07:57:36Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "2f6e4387b4d7577abd5ebf1bea0242770e66c6ac",
          "body": "The episode changes endpoint was a bare request defaulting to TMDB's\nlast-24-hours window, making the drift baseline non-deterministic (it varied\nwith whether the episode had recent edits). Extend the method to accept\nstart_date/end_date/page like the sibling changes endpoints, and pass a fixed\nhist\n[…]\nnapshot is deterministic. Also\ncorrects the method docstring, which wrongly claimed TMDB exposes no date\nparams for this endpoint.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(tmdb): support date range on tv_episodes.changes",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T07:55:53Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "cdac975ccb5077c0f723912fca09ab9598d0380b",
          "body": "Detect additive/removed TMDB response properties (schema drift) independently\nof editorial value changes. keyTree extracts a value-blind, sorted set of\nproperty paths; dynamic dictionary keys (country/locale/numeric ids) collapse\nto a {} wildcard so new countries/providers don't false-alarm. Snapsho\n[…]\n 117 read-endpoint shapes; a weekly cron diffs live TMDB against\nthe committed baseline and opens/updates a GitHub issue on drift.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(tmdb): add schema-drift detection",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-10T07:39:58Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f8cd20c7f4b0795dc69df99305c3eeb67fa52362",
          "body": "…vocations\n\nperf(docs): cut edge & serverless usage (proxy matcher + dynamicParams)",
          "is_bot": false,
          "headline": "Merge pull request #134 from lorenzopant/perf/cut-docs-edge-and-fn-in…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-09T22:06:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6a18c6890dc84f56d1210372b93991b127e0ace8",
          "body": "…ing usage\n\nTwo zero-behavior-change reductions in serverless/edge usage for the docs app:\n\n- proxy.ts: add config.matcher scoped to /docs/:path* — the only paths\n  where markdown content-negotiation applies. Previously the proxy ran as\n  an Edge Function on every request (static assets, RSC prefetc\n[…]\nless Function to render notFound(). All real pages\n  are prebuilt via generateStaticParams, so legitimate traffic is\n  unaffected.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "perf(docs): scope proxy matcher and disable dynamicParams to cut host…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-09T21:36:38Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "753ac356adde16cf52bbe520716734f7436ce985",
          "body": "ci: add lint and typecheck jobs",
          "is_bot": false,
          "headline": "Merge pull request #133 from lorenzopant/ci/lint-typecheck-workflows",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-09T21:28:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d7b8e50f203a5a473595d41e8290f654dcc1c2a7",
          "body": "Add lint and typecheck as separate jobs in the CI workflow, running on\npush and PRs to main and develop:\n\n- lint runs `pnpm run lint:check` (type-aware oxlint)\n- typecheck runs `pnpm run typecheck` (tsc --noEmit)\n\nBoth mirror the existing unit-tests job setup (pnpm 9.15.9, Node 20) and\nneed no secre\n[…]\n. Without this, a fresh CI\ncheckout fails with \"Cannot find module '@lorenzopant/tmdb'\" because the\npackage's dist is never built.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "ci: add lint and typecheck jobs",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-09T21:21:14Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "96c9cf41770af858f02952ba18791b5d615de88c",
          "body": "fix(docs/mcp): return 405 for GET/DELETE on stateless MCP endpoint",
          "is_bot": false,
          "headline": "Merge pull request #131 from lorenzopant/fix/mcp-get-flood-405",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-09T21:12:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cd9e647867e448d8af8ba344ef68f1608434e0a8",
          "body": null,
          "is_bot": false,
          "headline": "Merge remote-tracking branch 'origin/main' into fix/mcp-get-flood-405",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-09T21:08:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "44709b5e386825a72800263328727b705ccbf873",
          "body": "…ions\n\ntest(integration): assert contracts, not volatile live data",
          "is_bot": false,
          "headline": "Merge pull request #132 from lorenzopant/fix/flaky-integration-assert…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-09T21:07:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c1e09a559ebd9052f85fcb3b91bf99bf1b352f8a",
          "body": "TVImagesParams.include_image_language is typed (Language | \"null\")[], but the\nintegration test passed the string \"es-ES\", a type error (TS2322). It went\nunnoticed because tsconfig excludes test files from `tsc --noEmit`, and the\ntype-aware lint doesn't flag the assignability mismatch. Wrap the value\n[…]\n: type-checking the tests (temporary tsconfig without the test\nexclusion) reports 0 errors; tv_series integration suite 20 passed.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(test): pass include_image_language as an array in tv_series images",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-09T21:05:12Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "04d3c60c5db651bf5120e383d544ff00c3d670d5",
          "body": "Translation `data.*` fields (name, overview, tagline, homepage) are all\noptional in TVTranslationData / TVSeasonTranslationData /\nTVEpisodeTranslationData — TMDB may omit them even when the translation\nexists, and the client sanitizes null to undefined. Asserting their presence\n(`typeof ...data.tagl\n[…]\nams via a request interceptor, rather\nthan on volatile localized response content.\n\nFull integration suite: 155 passed (24 files).\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "test(integration): don't assert optional translation data fields",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-09T20:55:15Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "ebba74cfb5e11c2c6fcbf63c686846f6df514576",
          "body": "Several integration tests asserted exact content at a fixed index of live,\ncommunity-editable TMDB lists (alternative titles, content ratings, episode\ngroups, reviews, translations, videos, public lists, search rankings, cast\nbilling order, config country order). That data reorders and changes over\n\n[…]\nookups (find-by-external-id) and existing type checks.\n\nNo production code changed. Full integration suite: 155 passed (24 files).\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "test(integration): assert contracts, not volatile live data",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-09T20:47:10Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "2cd5791da294419372852a66d4b910f202e1c5cb",
          "body": "The docs MCP endpoint runs stateless (no session id, JSON responses), so it\nonly supports POST request/response. GET (server-to-client SSE stream) and\nDELETE (session teardown) have no meaning here, but the handlers previously\nrouted every method through the MCP server and answered 200.\n\nAnswering 2\n[…]\nto match.\n\nVerified locally: GET/DELETE -> 405; OPTIONS -> 204 (POST, OPTIONS);\nPOST initialize/tools/list/tools/call all succeed.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(docs/mcp): return 405 for GET/DELETE on stateless MCP endpoint",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-07-09T20:31:22Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "9f9cbf288c54ed97a8a34dbf11376611beab5710",
          "body": "fix(deps): resolve all dependabot security advisories",
          "is_bot": false,
          "headline": "Merge pull request #129 from lorenzopant/fix/dependabot-security-updates",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-07T09:32:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "06dfc8e80964ff3273474e8e1122c1044e48d1be",
          "body": "Pin transitive deps via pnpm overrides and bump turbo directly:\n\n- turbo 2.9.1 -> 2.9.16 (CSRF/session fixation, local code exec)\n- yaml >=2.8.3 (stack overflow via nested YAML)\n- postcss >=8.5.10 (XSS via unescaped </style>)\n- hono >=4.12.21 (JWT bypass, path routing issues)\n- qs >=6.15.2 (DoS via qs.stringify on null entries)",
          "is_bot": false,
          "headline": "fix(deps): resolve all dependabot security advisories",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-06T16:40:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "690bc3bbcbd7934c9c4cafbbd25d7486b98889c3",
          "body": null,
          "is_bot": false,
          "headline": "🚀 chore: release v1.22.2",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-06T10:15:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "11b127040f4479460e8d4ea59c100e155df9e714",
          "body": null,
          "is_bot": false,
          "headline": "chore: updated changelog",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-06T10:15:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ae26ab7cbaf74630a8496182fd02459c9e585bb1",
          "body": "…const-objects\n\nfeat(enums): replace enums with const objects and label maps",
          "is_bot": false,
          "headline": "Merge pull request #128 from lorenzopant/feat/122-replace-enums-with-…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-06T10:09:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7ce67d64c3ef6508ff3abb05a2ae47b53f64ce98",
          "body": "Moves DiscoverTVStatus, DiscoverTVType, and TVEpisodeGroupType docs into\nenums.mdx alongside MovieReleaseType. Updates all four to show the new\nconst object pattern with value tables and *Label map usage examples.\nReplaces inline sections in discover.mdx and tv-episode-groups.mdx with\nlinks to the enums reference page.\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs(enums): consolidate all enum docs into enums.mdx",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-06T10:07:50Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "bce475af325989969339e82dea488b3969c51083",
          "body": "Replaces all TypeScript enums with `as const` objects to avoid numeric\nenum pitfalls (reverse mapping, structural typing, tree-shaking).\nAdds *Label maps for human-readable reverse lookup.\nConsolidates all enum declarations into types/enums.ts.\n\nCloses #122\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(enums): replace enums with const objects and label maps",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-06T09:54:23Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "6455a4bb40325310ba4d4eae59638d5d13745f38",
          "body": "…-type\n\nfix(types): export MovieReleaseType and rename from ReleaseType",
          "is_bot": false,
          "headline": "Merge pull request #126 from lorenzopant/fix/120-export-movie-release…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-06T09:31:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "932243409bfa829782552d14367328d2f88505ba",
          "body": null,
          "is_bot": false,
          "headline": "docs(enums): fix broken anchor link to DiscoverMovieParams",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-04T19:43:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "380d5b228217657ed5fcf47fa6cc306199efe8a7",
          "body": "…e-namespace\n\nfix(tv-series): add missing append_to_response values to TVAppendToResponseNamespace",
          "is_bot": false,
          "headline": "Merge pull request #124 from lorenzopant/fix/118-tv-append-to-respons…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-04T18:58:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3b4e370c26e971f2e73f66fccfa37a6f4f63c3c6",
          "body": "…erage\n\nfix(types): add vote_average to TVSeasonItem",
          "is_bot": false,
          "headline": "Merge pull request #127 from lorenzopant/fix/121-tvseasonitem-vote-av…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-04T18:58:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "77f5fd910fbfcbef3a47cecd93c5115c8acc60ee",
          "body": null,
          "is_bot": false,
          "headline": "test(tv-series): assert vote_average present on seasons items",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-04T18:00:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "047268c01ec6d4f069525ba7ff062fd8da81dfe2",
          "body": "fix(collections): correct CollectionItem to use title/original_title",
          "is_bot": false,
          "headline": "Merge pull request #125 from lorenzopant/fix/119-collection-item-type",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-04T17:58:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0683975a5951bd20455afa8dc0915c2428f25d43",
          "body": "fix(trending): add page param to all trending endpoints",
          "is_bot": false,
          "headline": "Merge pull request #123 from lorenzopant/fix/117-trending-page-param",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-04T17:57:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "97bb4d7702984cd9dbf538e82c24bcd024159961",
          "body": "… details integration tests",
          "is_bot": false,
          "headline": "fix(tv-series): include 'changes' in append_to_response for TV series…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-04T17:56:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "84c66664062be3b920baff443be0226a26c90b33",
          "body": "…sponseNamespace\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(tv-series): add missing append_to_response values to TVAppendToRe…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-04T17:54:40Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "9ee417a376904fc93e5a994a6616f22ee4e3c996",
          "body": null,
          "is_bot": false,
          "headline": "refactor(trending): format request parameters for better readability",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-04T17:43:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d71c1abfaba202af580666a07da7763ce979f4f8",
          "body": "Spread rest params instead of destructuring page explicitly so the\nquery object only contains page when the caller provides it. Fixes\nshape mismatch caught by unit tests and potential interceptor issues.",
          "is_bot": false,
          "headline": "fix(trending): avoid passing page:undefined to client.request",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-04T17:41:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "041ba88d7a66609b280ecc0a0dd8bf1a01466bc6",
          "body": "…n test\n\n8 individual HTTP requests collapsed into 2 via beforeAll + Promise.all,\nreducing integration runtime and external-failure surface.",
          "is_bot": false,
          "headline": "test(tv_series): batch append_to_response calls in details integratio…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-03T23:08:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "28020ecc2c87f975514e1ea7f2601a6d121002fb",
          "body": "Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "test(trending): add page param forwarding coverage",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-03T23:05:17Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "d9008623cb47fa5be6164930c323a3bf398185d2",
          "body": "Field returned by TMDB API but missing from type definition.\n\nCloses #121",
          "is_bot": false,
          "headline": "fix(types): add vote_average to TVSeasonItem",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-03T22:53:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9b76024000b5fa7416d6a16c8dae872fb980dad8",
          "body": "ReleaseType was never re-exported from types/index.ts, making it\ninaccessible to consumers. Renamed to MovieReleaseType since the\nenum is scoped exclusively to movie release dates and movie discover\nfilters — TV has no equivalent concept.\n\nCloses #120",
          "is_bot": false,
          "headline": "fix(types): export MovieReleaseType and rename from ReleaseType",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-03T22:49:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "eae75170f325124da21e2cc9678929cd37207c0f",
          "body": "TMDB API docs incorrectly show `name`/`original_name` for parts items,\nbut the actual API returns `title`/`original_title`. Fixes the type and\nadds unit + integration tests to prevent regression.\n\nCloses #119\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(collections): correct CollectionItem to use title/original_title",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-03T22:44:19Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "92d73254dc3212107701f5a10346ae7404d30d65",
          "body": "Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs(tv-series): update TVAppendToResponseNamespace and details example",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-03T22:31:43Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "2921d87b6bd623c91ee3d32db2c4065f2cac0b83",
          "body": "…sponseNamespace\n\nCloses #118\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(tv-series): add missing append_to_response values to TVAppendToRe…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-03T22:23:32Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "fffe9c9712f00664d88fea4d723f641671fdcfed",
          "body": "TMDB trending endpoints support pagination despite the official docs\nnot listing it. TrendingParams was missing page, so callers had no way\nto fetch beyond page 1.\n\nCloses #117",
          "is_bot": false,
          "headline": "fix(trending): add page param to all trending endpoints",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-06-03T22:08:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ed967b86698b5d446117e011d3189ab26e266d87",
          "body": null,
          "is_bot": false,
          "headline": "chore: updated README.md",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-16T07:24:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e069bf3e88d23d2d6743043b977de15c1d5a3b51",
          "body": null,
          "is_bot": false,
          "headline": "Update README.md",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-16T07:21:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ae8aef8ce55e40a76874b61d16976e0b89292aa1",
          "body": null,
          "is_bot": false,
          "headline": "🚀 chore: release v1.22.1",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-15T18:30:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3c7e493629cf598fa6bcd821694951523a230999",
          "body": null,
          "is_bot": false,
          "headline": "chore: updated changelog",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-15T18:30:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "198ad12846cdda2d7637a497ada055866fdcefba",
          "body": "…/docs/next-16.2.3\n\nbuild(deps): bump next from 16.1.6 to 16.2.3 in /apps/docs",
          "is_bot": false,
          "headline": "Merge pull request #110 from lorenzopant/dependabot/npm_and_yarn/apps…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-15T18:28:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f8e2199851314c7d059e6743ee7ccf777fb06d79",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into dependabot/npm_and_yarn/apps/docs/next-16.2.3",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-15T18:23:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "db64180d37bfcabc28a03cdef2ee9c38ce93cc4e",
          "body": null,
          "is_bot": false,
          "headline": "🚀 chore: release v1.22.0",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-15T18:22:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "220fa97114b6260e94c53506e5a4fcc61d8b1110",
          "body": "feat(ai): LLM integrations & MCP server",
          "is_bot": false,
          "headline": "Merge pull request #116 from lorenzopant/feat/ai-llms",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-15T18:21:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d00a52c95017668ff3d8376ca6879f497974599b",
          "body": null,
          "is_bot": false,
          "headline": "chore: updated chagelog",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-15T18:21:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5e7fa4dd3fe8c2a3f5dc6c3350ce1fdee35b1250",
          "body": null,
          "is_bot": false,
          "headline": "feat: add @modelcontextprotocol/sdk to serverExternalPackages",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-15T18:18:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d350194b2924e03fff0aa7cd0f45b6721bb9b152",
          "body": null,
          "is_bot": false,
          "headline": "chore: updated changelog",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-13T21:07:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2a83832c1a5b6589a6c306cb5acc3efb4162a73a",
          "body": null,
          "is_bot": false,
          "headline": "chore: bump deps",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-13T06:49:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8a5d380a89419171e681699052bd40c5ef54087f",
          "body": "…xt-16.2.3",
          "is_bot": false,
          "headline": "Merge branch 'feat/ai-llms' into dependabot/npm_and_yarn/apps/docs/ne…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-13T06:45:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "555fdda8fc43cc6e056b0cf6f11a4ec33a7d8ace",
          "body": null,
          "is_bot": false,
          "headline": "fix: review fixes",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-13T06:40:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "75258a3d07c6f8b3ccad9254e6e1265f844b37be",
          "body": null,
          "is_bot": false,
          "headline": "feat(ai): docs",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-12T20:41:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "422d598655b262cd702a2424552106a50532a5a8",
          "body": null,
          "is_bot": false,
          "headline": "feat(ai): mcp server",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-12T20:33:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "36bf3232a59d0e391c8d5a65a450a24ba7818337",
          "body": null,
          "is_bot": false,
          "headline": "fix: missing .mdx route",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-12T19:48:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bddded261b18f76195dfe822106f10adeb7a5c08",
          "body": null,
          "is_bot": false,
          "headline": "feat(ai): better llms-text integrations",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-12T19:42:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4e61f55bd79142647c96fb0c2fb9b4d2d4e0fd3e",
          "body": null,
          "is_bot": false,
          "headline": "🚀 chore: release v1.21.3",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-09T13:05:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "df4cbcbc23ccf5ed0388c30975404aba358cb034",
          "body": "feat: fallback url for images",
          "is_bot": false,
          "headline": "Merge pull request #114 from lorenzopant/feat/default-fallback-url",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-09T13:02:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d8ed8efac796462369c72c6b67086fef2be4914e",
          "body": null,
          "is_bot": false,
          "headline": "fix: review fixes",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-09T13:01:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2de70ca76a5e4666fe10d3ae09dcbe79f0149ca1",
          "body": "Co-authored-by: Copilot <copilot@github.com>",
          "is_bot": false,
          "headline": "feat: fallback url for images",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-07T07:24:10Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "d04806a5a3e7be526816e240bc71a2cac17c178e",
          "body": null,
          "is_bot": false,
          "headline": "🚀 chore: release v1.21.2",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-02T22:13:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3a0be3ed1ce4ad34f9822f8eff4bd739d86a82fb",
          "body": "Co-authored-by: Copilot <copilot@github.com>",
          "is_bot": false,
          "headline": "chore: updated changelog",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-02T22:13:12Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "a6b85fa0574df6d913550a6a6049b59c8e88b5ab",
          "body": "…-wikidata\n\nfeat(movies): add wikidata_id to external_ids",
          "is_bot": false,
          "headline": "Merge pull request #112 from solaldunckel/feat/movie-external-ids-add…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-02T22:10:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "38478c9ca73277e3d18e66a0fd1c2c9c51429443",
          "body": "…append\n\nfeat(movies): add watch/providers to append_to_response",
          "is_bot": false,
          "headline": "Merge pull request #111 from solaldunckel/feat/movie-watch-providers-…",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-05-02T22:09:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "775988128d2f59a14b34611a2af146f00b3c24f2",
          "body": null,
          "is_bot": false,
          "headline": "feat(movie): add wikidata_id to external_ids",
          "author_name": "Solal Dunckel",
          "author_login": "solaldunckel",
          "committed_at": "2026-04-27T12:07:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2410569cdd200f7dc21ef7c113e4b641d4392d1a",
          "body": null,
          "is_bot": false,
          "headline": "feat(movies): add watch/providers to append_to_response",
          "author_name": "Solal Dunckel",
          "author_login": "solaldunckel",
          "committed_at": "2026-04-27T11:11:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "966c507edd6f0f974dae0dcac73fc9ee7829943f",
          "body": null,
          "is_bot": false,
          "headline": "chore(docs): updated homepage url",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-04-18T11:35:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7bb9b503dd1892e80d8f3449fe96f2349a55541f",
          "body": null,
          "is_bot": false,
          "headline": "🚀 chore: release v1.21.1",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-04-18T11:27:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "93f3a6a5a969f38595477d1722f53593d38990fc",
          "body": null,
          "is_bot": false,
          "headline": "docs: updated changelog",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-04-18T11:26:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c655cbe5fa9d821ec54bb45f84fd0260edb6c41f",
          "body": "Bumps [next](https://github.com/vercel/next.js) from 16.1.6 to 16.2.3.\n- [Release notes](https://github.com/vercel/next.js/releases)\n- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)\n- [Commits](https://github.com/vercel/next.js/compare/v16.1.6...v16.2.3)\n\n---\nupdated-dependencies:\n- dependency-name: next\n  dependency-version: 16.2.3\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
          "is_bot": true,
          "headline": "build(deps): bump next from 16.1.6 to 16.2.3 in /apps/docs",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-04-18T11:25:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7bcdd36530fc57f99c6632d590de06274dd3b9ee",
          "body": null,
          "is_bot": false,
          "headline": "Update README.md",
          "author_name": "Lorenzo Pantano",
          "author_login": "lorenzopantano",
          "committed_at": "2026-04-18T11:24:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 51,
      "commits_last_year": 673,
      "latest_release_at": "2026-07-17T13:38:38Z",
      "latest_release_tag": "v1.25.0",
      "releases_from_tags": false,
      "days_since_last_push": 5,
      "active_weeks_last_year": 22,
      "days_since_latest_release": 5,
      "mean_days_between_releases": 10.3
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 87,
      "has_issue_template": false,
      "has_code_of_conduct": true,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "@lorenzopant/tmdb",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "api",
            "movies",
            "tmdb",
            "typescript"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@lorenzopant/tmdb",
          "is_deprecated": false,
          "latest_version": "1.25.0",
          "repository_url": "https://github.com/lorenzopant/tmdb",
          "versions_count": 76,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 2688,
          "first_published_at": "2025-06-26T18:24:22.816000Z",
          "latest_published_at": "2026-07-17T13:38:36.244000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 5
        }
      ]
    },
    "popularity": {
      "forks": 5,
      "stars": 20,
      "watchers": 1,
      "fork_history": {
        "days": [
          {
            "date": "2026-03-13",
            "count": 1
          },
          {
            "date": "2026-03-26",
            "count": 1
          },
          {
            "date": "2026-04-08",
            "count": 1
          },
          {
            "date": "2026-04-27",
            "count": 1
          },
          {
            "date": "2026-06-05",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 5,
        "total_forks": 5
      },
      "star_history": null,
      "open_issues_and_prs": 1
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": true,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "apps/docs/tsconfig.json",
        "packages/tmdb/scripts/tsconfig.json",
        "packages/tmdb/tsconfig.json"
      ],
      "toolchain_manifests": [],
      "largest_source_bytes": 23819,
      "source_files_sampled": 199,
      "oversized_source_files": 0,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "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"
            ],
            "fixed_version": "5.0.7",
            "advisory_count": 1,
            "oldest_advisory_days": 1
          },
          {
            "name": "fast-uri",
            "direct": false,
            "version": "3.1.2",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-4c8g-83qw-93j6",
              "GHSA-v2hh-gcrm-f6hx"
            ],
            "fixed_version": "4.1.1",
            "advisory_count": 2,
            "oldest_advisory_days": 0
          },
          {
            "name": "hono",
            "direct": false,
            "version": "4.12.23",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.1,
            "advisory_ids": [
              "GHSA-88fw-hqm2-52qc",
              "GHSA-hvrm-45r6-mjfj",
              "GHSA-j6c9-x7qj-28xf",
              "GHSA-rv63-4mwf-qqc2",
              "GHSA-w62v-xxxg-mg59",
              "GHSA-wgpf-jwqj-8h8p",
              "GHSA-wwfh-h76j-fc44",
              "GHSA-xgm2-5f3f-mvvc"
            ],
            "fixed_version": "4.12.27",
            "advisory_count": 8,
            "oldest_advisory_days": 36
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.1.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-52cp-r559-cp3m",
              "GHSA-h67p-54hq-rp68"
            ],
            "fixed_version": "4.3.0",
            "advisory_count": 2,
            "oldest_advisory_days": 37
          },
          {
            "name": "sharp",
            "direct": false,
            "version": "0.34.5",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.3,
            "advisory_ids": [
              "GHSA-f88m-g3jw-g9cj"
            ],
            "fixed_version": "0.35.0",
            "advisory_count": 1,
            "oldest_advisory_days": 0
          },
          {
            "name": "vite",
            "direct": false,
            "version": "8.0.5",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-fx2h-pf6j-xcff",
              "GHSA-v6wh-96g9-6wx3"
            ],
            "fixed_version": "8.0.16",
            "advisory_count": 2,
            "oldest_advisory_days": 37
          },
          {
            "name": "@hono/node-server",
            "direct": false,
            "version": "1.19.14",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.9,
            "advisory_ids": [
              "GHSA-frvp-7c67-39w9"
            ],
            "fixed_version": "2.0.5",
            "advisory_count": 1,
            "oldest_advisory_days": 0
          },
          {
            "name": "body-parser",
            "direct": false,
            "version": "2.2.2",
            "severity": "low",
            "ecosystem": "npm",
            "cvss_score": 3.7,
            "advisory_ids": [
              "GHSA-v422-hmwv-36x6"
            ],
            "fixed_version": "2.3.0",
            "advisory_count": 1,
            "oldest_advisory_days": 1
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.27.3",
            "severity": "low",
            "ecosystem": "npm",
            "cvss_score": 2.5,
            "advisory_ids": [
              "GHSA-g7r4-m6w7-qqqr"
            ],
            "fixed_version": "0.28.1",
            "advisory_count": 1,
            "oldest_advisory_days": 39
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.28.0",
            "severity": "low",
            "ecosystem": "npm",
            "cvss_score": 2.5,
            "advisory_ids": [
              "GHSA-g7r4-m6w7-qqqr"
            ],
            "fixed_version": "0.28.1",
            "advisory_count": 1,
            "oldest_advisory_days": 39
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "low": 3,
          "high": 6,
          "moderate": 1
        },
        "advisory_count": 20,
        "affected_count": 10,
        "assessed_count": 664,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 32,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "npm"
      ],
      "dependencies": [],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "@alloc/quick-lru",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/generator",
            "direct": false,
            "version": "8.0.0-rc.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "8.0.0-rc.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "7.28.5",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "8.0.0-rc.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "8.0.0-rc.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "8.0.0-rc.3",
            "ecosystem": "npm"
          },
          {
            "name": "@bcoe/v8-coverage",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/core",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/wasi-threads",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-arm64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-arm64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-arm64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-arm64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openharmony-arm64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openharmony-arm64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@floating-ui/core",
            "direct": false,
            "version": "1.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "@floating-ui/dom",
            "direct": false,
            "version": "1.7.5",
            "ecosystem": "npm"
          },
          {
            "name": "@floating-ui/react-dom",
            "direct": false,
            "version": "2.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@floating-ui/utils",
            "direct": false,
            "version": "0.2.10",
            "ecosystem": "npm"
          },
          {
            "name": "@fumadocs/tailwind",
            "direct": false,
            "version": "0.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@hono/node-server",
            "direct": false,
            "version": "1.19.14",
            "ecosystem": "npm"
          },
          {
            "name": "@img/colour",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-darwin-arm64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-darwin-x64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-darwin-arm64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-darwin-x64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-arm",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-arm64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-ppc64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-riscv64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-s390x",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-x64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linuxmusl-arm64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linuxmusl-x64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-arm",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-arm64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-ppc64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-riscv64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-s390x",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-x64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linuxmusl-arm64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linuxmusl-x64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-wasm32",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-arm64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-ia32",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-x64",
            "direct": false,
            "version": "0.34.5",
            "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": "@mdx-js/mdx",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@modelcontextprotocol/sdk",
            "direct": false,
            "version": "1.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@modelcontextprotocol/sdk",
            "direct": false,
            "version": "^1.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/wasm-runtime",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@next/env",
            "direct": false,
            "version": "16.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "@next/swc-darwin-arm64",
            "direct": false,
            "version": "16.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "@next/swc-darwin-x64",
            "direct": false,
            "version": "16.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "@next/swc-linux-arm64-gnu",
            "direct": false,
            "version": "16.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "@next/swc-linux-arm64-musl",
            "direct": false,
            "version": "16.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "@next/swc-linux-x64-gnu",
            "direct": false,
            "version": "16.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "@next/swc-linux-x64-musl",
            "direct": false,
            "version": "16.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "@next/swc-win32-arm64-msvc",
            "direct": false,
            "version": "16.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "@next/swc-win32-x64-msvc",
            "direct": false,
            "version": "16.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "@orama/orama",
            "direct": false,
            "version": "3.1.18",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-project/types",
            "direct": false,
            "version": "0.122.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-android-arm-eabi",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-android-arm64",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-darwin-arm64",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-darwin-x64",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-freebsd-x64",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-linux-arm-musleabihf",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-linux-arm64-gnu",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-linux-arm64-musl",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-linux-riscv64-gnu",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-linux-riscv64-musl",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-linux-s390x-gnu",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-linux-x64-gnu",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-linux-x64-musl",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-openharmony-arm64",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-win32-arm64-msvc",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-win32-ia32-msvc",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxfmt/binding-win32-x64-msvc",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint-tsgolint/darwin-arm64",
            "direct": false,
            "version": "0.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint-tsgolint/darwin-x64",
            "direct": false,
            "version": "0.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint-tsgolint/linux-arm64",
            "direct": false,
            "version": "0.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint-tsgolint/linux-x64",
            "direct": false,
            "version": "0.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint-tsgolint/win32-arm64",
            "direct": false,
            "version": "0.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint-tsgolint/win32-x64",
            "direct": false,
            "version": "0.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-android-arm-eabi",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-android-arm64",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-darwin-arm64",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-darwin-x64",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-freebsd-x64",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-linux-arm-musleabihf",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-linux-arm64-gnu",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-linux-arm64-musl",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-linux-riscv64-gnu",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-linux-riscv64-musl",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-linux-s390x-gnu",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-linux-x64-gnu",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-linux-x64-musl",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-openharmony-arm64",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-win32-arm64-msvc",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-win32-ia32-msvc",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxlint/binding-win32-x64-msvc",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "@polka/url",
            "direct": false,
            "version": "1.0.0-next.29",
            "ecosystem": "npm"
          },
          {
            "name": "@quansync/fs",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/number",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/primitive",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-accordion",
            "direct": false,
            "version": "1.2.12",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-arrow",
            "direct": false,
            "version": "1.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-collapsible",
            "direct": false,
            "version": "1.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-collapsible",
            "direct": false,
            "version": "^1.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-collection",
            "direct": false,
            "version": "1.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-compose-refs",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-context",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dialog",
            "direct": false,
            "version": "1.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-direction",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dismissable-layer",
            "direct": false,
            "version": "1.1.11",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-focus-guards",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-focus-scope",
            "direct": false,
            "version": "1.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-id",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-navigation-menu",
            "direct": false,
            "version": "1.2.14",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-popover",
            "direct": false,
            "version": "1.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-popper",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-portal",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-presence",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-primitive",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-roving-focus",
            "direct": false,
            "version": "1.1.11",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-scroll-area",
            "direct": false,
            "version": "1.2.10",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-slot",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-slot",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-tabs",
            "direct": false,
            "version": "1.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-tabs",
            "direct": false,
            "version": "^1.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-callback-ref",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-controllable-state",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-effect-event",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-escape-keydown",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-layout-effect",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-previous",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-rect",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-size",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-visually-hidden",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/rect",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-android-arm64",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-arm64",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-x64",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-freebsd-x64",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-gnu",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-musl",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-s390x-gnu",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-gnu",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-musl",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-openharmony-arm64",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-wasm32-wasi",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-arm64-msvc",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-x64-msvc",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/pluginutils",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/core",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/engine-javascript",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/engine-oniguruma",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/langs",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/primitive",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/themes",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/types",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/vscode-textmate",
            "direct": false,
            "version": "10.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@standard-schema/spec",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/helpers",
            "direct": false,
            "version": "0.5.15",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/node",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-android-arm64",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-darwin-arm64",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-darwin-x64",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-freebsd-x64",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-arm64-gnu",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-arm64-musl",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-x64-gnu",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-x64-musl",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-wasm32-wasi",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-win32-arm64-msvc",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-win32-x64-msvc",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/postcss",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/postcss",
            "direct": false,
            "version": "^4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@takumi-rs/core",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@takumi-rs/core-darwin-arm64",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@takumi-rs/core-darwin-x64",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@takumi-rs/core-linux-arm64-gnu",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@takumi-rs/core-linux-arm64-musl",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@takumi-rs/core-linux-x64-gnu",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@takumi-rs/core-linux-x64-musl",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@takumi-rs/core-win32-arm64-msvc",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@takumi-rs/core-win32-x64-msvc",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@takumi-rs/helpers",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@takumi-rs/image-response",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@takumi-rs/image-response",
            "direct": false,
            "version": "^1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@takumi-rs/wasm",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@ts-morph/common",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@turbo/darwin-64",
            "direct": false,
            "version": "2.9.16",
            "ecosystem": "npm"
          },
          {
            "name": "@turbo/darwin-arm64",
            "direct": false,
            "version": "2.9.16",
            "ecosystem": "npm"
          },
          {
            "name": "@turbo/linux-64",
            "direct": false,
            "version": "2.9.16",
            "ecosystem": "npm"
          },
          {
            "name": "@turbo/linux-arm64",
            "direct": false,
            "version": "2.9.16",
            "ecosystem": "npm"
          },
          {
            "name": "@turbo/windows-64",
            "direct": false,
            "version": "2.9.16",
            "ecosystem": "npm"
          },
          {
            "name": "@turbo/windows-arm64",
            "direct": false,
            "version": "2.9.16",
            "ecosystem": "npm"
          },
          {
            "name": "@tybys/wasm-util",
            "direct": false,
            "version": "0.10.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/chai",
            "direct": false,
            "version": "5.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/debug",
            "direct": false,
            "version": "4.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "@types/deep-eql",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree-jsx",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/hast",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/jsesc",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdast",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdx",
            "direct": false,
            "version": "2.0.13",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdx",
            "direct": false,
            "version": "^2.0.13",
            "ecosystem": "npm"
          },
          {
            "name": "@types/ms",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "25.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "25.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "^25.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "^25.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react",
            "direct": false,
            "version": "19.2.14",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react",
            "direct": false,
            "version": "^19.2.14",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react-dom",
            "direct": false,
            "version": "19.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react-dom",
            "direct": false,
            "version": "^19.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "2.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@ungap/structured-clone",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vercel/analytics",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@vercel/analytics",
            "direct": false,
            "version": "^2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vercel/speed-insights",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vercel/speed-insights",
            "direct": false,
            "version": "^2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/coverage-v8",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/coverage-v8",
            "direct": false,
            "version": "^4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/expect",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/mocker",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/pretty-format",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/runner",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/snapshot",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/spy",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/ui",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/ui",
            "direct": false,
            "version": "^4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/utils",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "accepts",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-jsx",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "8.20.0",
            "ecosystem": "npm"
          },
          {
            "name": "ajv-formats",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansis",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "aria-hidden",
            "direct": false,
            "version": "1.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "assertion-error",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ast-kit",
            "direct": false,
            "version": "3.0.0-beta.1",
            "ecosystem": "npm"
          },
          {
            "name": "ast-v8-to-istanbul",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "astring",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "bail",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "baseline-browser-mapping",
            "direct": false,
            "version": "2.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "birpc",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "body-parser",
            "direct": false,
            "version": "2.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "bytes",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "cac",
            "direct": false,
            "version": "7.0.0",
            "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.30001772",
            "ecosystem": "npm"
          },
          {
            "name": "ccount",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "chai",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-html4",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-legacy",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-reference-invalid",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "class-variance-authority",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "class-variance-authority",
            "direct": false,
            "version": "^0.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "client-only",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "clsx",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "code-block-writer",
            "direct": false,
            "version": "13.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "collapse-white-space",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "comma-separated-tokens",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "compute-scroll-into-view",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "content-disposition",
            "direct": false,
            "version": "1.1.0",
            "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.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "cors",
            "direct": false,
            "version": "2.8.6",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "csstype",
            "direct": false,
            "version": "3.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decode-named-character-reference",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "defu",
            "direct": false,
            "version": "6.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "depd",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "dequal",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "detect-libc",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "detect-node-es",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "devlop",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "dotenv",
            "direct": false,
            "version": "16.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "dotenv",
            "direct": false,
            "version": "^16.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "dts-resolver",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "dunder-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ee-first",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "empathic",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "encodeurl",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "enhanced-resolve",
            "direct": false,
            "version": "5.19.0",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "6.0.1",
            "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.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-object-atoms",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "esast-util-from-estree",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "esast-util-from-js",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-html",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-attach-comments",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-build-jsx",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-is-identifier-name",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-scope",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-to-js",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-value-to-estree",
            "direct": false,
            "version": "3.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-visit",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "etag",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "eventsource",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "eventsource-parser",
            "direct": false,
            "version": "3.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "expect-type",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "express",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "express-rate-limit",
            "direct": false,
            "version": "8.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "extend",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-uri",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "fdir",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "fflate",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "finalhandler",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "flatted",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "forwarded",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "framer-motion",
            "direct": false,
            "version": "12.38.0",
            "ecosystem": "npm"
          },
          {
            "name": "framer-motion",
            "direct": false,
            "version": "^12.38.0",
            "ecosystem": "npm"
          },
          {
            "name": "fresh",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "fumadocs-core",
            "direct": false,
            "version": "16.8.10",
            "ecosystem": "npm"
          },
          {
            "name": "fumadocs-mdx",
            "direct": false,
            "version": "15.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "fumadocs-typescript",
            "direct": false,
            "version": "5.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "fumadocs-typescript",
            "direct": false,
            "version": "^5.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "fumadocs-ui",
            "direct": false,
            "version": "16.8.10",
            "ecosystem": "npm"
          },
          {
            "name": "function-bind",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "get-intrinsic",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-nonce",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-tsconfig",
            "direct": false,
            "version": "4.13.6",
            "ecosystem": "npm"
          },
          {
            "name": "get-tsconfig",
            "direct": false,
            "version": "4.13.7",
            "ecosystem": "npm"
          },
          {
            "name": "github-slugger",
            "direct": false,
            "version": "2.0.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-flag",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-symbols",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "hasown",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-from-parse5",
            "direct": false,
            "version": "8.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-parse-selector",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-raw",
            "direct": false,
            "version": "9.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-estree",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-html",
            "direct": false,
            "version": "9.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-jsx-runtime",
            "direct": false,
            "version": "2.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-parse5",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-whitespace",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hastscript",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hono",
            "direct": false,
            "version": "4.12.23",
            "ecosystem": "npm"
          },
          {
            "name": "hookable",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-escaper",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "html-void-elements",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "http-errors",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "import-without-cache",
            "direct": false,
            "version": "0.2.5",
            "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": "ip-address",
            "direct": false,
            "version": "10.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ipaddr.js",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphabetical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphanumerical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-decimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-hexadecimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-promise",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-coverage",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-report",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-reports",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "jiti",
            "direct": false,
            "version": "2.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "jose",
            "direct": false,
            "version": "6.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "10.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsesc",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-typed",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-darwin-arm64",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-darwin-x64",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-freebsd-arm64",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-freebsd-x64",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-linux-arm64",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-linux-x64",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-openbsd-arm64",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-openbsd-x64",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-windows-arm64",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "lefthook-windows-x64",
            "direct": false,
            "version": "2.1.4",
            "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": "longest-streak",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "lucide-react",
            "direct": false,
            "version": "1.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "lucide-react",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "lucide-react",
            "direct": false,
            "version": "^1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "magic-string",
            "direct": false,
            "version": "0.30.21",
            "ecosystem": "npm"
          },
          {
            "name": "magicast",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "make-dir",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "markdown-extensions",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "markdown-table",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "math-intrinsics",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-find-and-replace",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-from-markdown",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-autolink-literal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-footnote",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-strikethrough",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-table",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-task-list-item",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx-expression",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx-jsx",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdxjs-esm",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-phrasing",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-hast",
            "direct": false,
            "version": "13.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-markdown",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-string",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "media-typer",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "merge-descriptors",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-core-commonmark",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-autolink-literal",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-footnote",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-strikethrough",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-table",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-tagfilter",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-task-list-item",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdx-expression",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdx-jsx",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdx-md",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdxjs",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdxjs-esm",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-destination",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-label",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-mdx-expression",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-space",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-title",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-whitespace",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-character",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-chunked",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-classify-character",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-combine-extensions",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-decode-numeric-character-reference",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-decode-string",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-encode",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-events-to-acorn",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-html-tag-name",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-normalize-identifier",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-resolve-all",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-sanitize-uri",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-subtokenize",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-symbol",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-types",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "mime-db",
            "direct": false,
            "version": "1.54.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-types",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "10.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "motion",
            "direct": false,
            "version": "12.38.0",
            "ecosystem": "npm"
          },
          {
            "name": "motion-dom",
            "direct": false,
            "version": "12.38.0",
            "ecosystem": "npm"
          },
          {
            "name": "motion-utils",
            "direct": false,
            "version": "12.36.0",
            "ecosystem": "npm"
          },
          {
            "name": "mrmime",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.12",
            "ecosystem": "npm"
          },
          {
            "name": "negotiator",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "next",
            "direct": false,
            "version": "16.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "next-themes",
            "direct": false,
            "version": "0.4.6",
            "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": "once",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "oniguruma-parser",
            "direct": false,
            "version": "0.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "oniguruma-to-es",
            "direct": false,
            "version": "4.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "oxfmt",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "oxlint",
            "direct": false,
            "version": "1.58.0",
            "ecosystem": "npm"
          },
          {
            "name": "oxlint-tsgolint",
            "direct": false,
            "version": "0.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse-entities",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": false,
            "version": "7.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "parseurl",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "path-browserify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-to-regexp",
            "direct": false,
            "version": "8.4.2",
            "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": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "pkce-challenge",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.15",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "^8.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "property-information",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "proxy-addr",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.15.2",
            "ecosystem": "npm"
          },
          {
            "name": "quansync",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "range-parser",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "raw-body",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "react",
            "direct": false,
            "version": "19.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "react",
            "direct": false,
            "version": "^19.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "react-dom",
            "direct": false,
            "version": "19.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "react-dom",
            "direct": false,
            "version": "^19.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "react-remove-scroll",
            "direct": false,
            "version": "2.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "react-remove-scroll-bar",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "react-style-singleton",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "recma-build-jsx",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "recma-jsx",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "recma-parse",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "recma-stringify",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "regex",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "regex-recursion",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "regex-utilities",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-raw",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-recma",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark",
            "direct": false,
            "version": "15.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "remark-gfm",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "remark-mdx",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "remark-parse",
            "direct": false,
            "version": "11.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark-rehype",
            "direct": false,
            "version": "11.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "remark-stringify",
            "direct": false,
            "version": "11.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "require-from-string",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-pkg-maps",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "rolldown",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "rolldown-plugin-dts",
            "direct": false,
            "version": "0.23.2",
            "ecosystem": "npm"
          },
          {
            "name": "router",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "safer-buffer",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "scheduler",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "scroll-into-view-if-needed",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "send",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "serve-static",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "setprototypeof",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "sharp",
            "direct": false,
            "version": "0.34.5",
            "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": "shiki",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel",
            "direct": false,
            "version": "1.1.0",
            "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": "sirv",
            "direct": false,
            "version": "3.0.2",
            "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": "space-separated-tokens",
            "direct": false,
            "version": "2.0.2",
            "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.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "stringify-entities",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "style-to-js",
            "direct": false,
            "version": "1.1.21",
            "ecosystem": "npm"
          },
          {
            "name": "style-to-object",
            "direct": false,
            "version": "1.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "styled-jsx",
            "direct": false,
            "version": "5.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "tailwind-merge",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "tailwind-merge",
            "direct": false,
            "version": "^3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "tailwindcss",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "tailwindcss",
            "direct": false,
            "version": "^4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "takumi-js",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "tapable",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinybench",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.15",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.16",
            "ecosystem": "npm"
          },
          {
            "name": "tinypool",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinyrainbow",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "toidentifier",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "totalist",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tree-kill",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "trim-lines",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "trough",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-morph",
            "direct": false,
            "version": "27.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ts-morph",
            "direct": false,
            "version": "^27.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "tsdown",
            "direct": false,
            "version": "0.21.7",
            "ecosystem": "npm"
          },
          {
            "name": "tsdown",
            "direct": false,
            "version": "^0.21.7",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "tsx",
            "direct": false,
            "version": "4.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "tsx",
            "direct": false,
            "version": "^4.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "turbo",
            "direct": false,
            "version": "2.9.16",
            "ecosystem": "npm"
          },
          {
            "name": "type-is",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "5.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "^5.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "^6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "unconfig-core",
            "direct": false,
            "version": "7.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "7.18.2",
            "ecosystem": "npm"
          },
          {
            "name": "unified",
            "direct": false,
            "version": "11.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-is",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-position",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-position-from-estree",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-remove-position",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-stringify-position",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit-parents",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "unpipe",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unrun",
            "direct": false,
            "version": "0.2.34",
            "ecosystem": "npm"
          },
          {
            "name": "use-callback-ref",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "use-sidecar",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "vary",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "vfile",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vfile-location",
            "direct": false,
            "version": "5.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vfile-message",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "8.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "^8.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "^4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "web-namespaces",
            "direct": false,
            "version": "2.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": "wrappy",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": false,
            "version": "^4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "zod-to-json-schema",
            "direct": false,
            "version": "3.25.2",
            "ecosystem": "npm"
          },
          {
            "name": "zwitch",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 696,
        "direct_count": 0,
        "indirect_count": 696
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 1,
        "merged_prs": 115,
        "open_issues": 0,
        "closed_ratio": 1,
        "closed_issues": 18,
        "closed_unmerged_prs": 5
      },
      "bus_factor": 1,
      "bot_contributors": 3,
      "top_contributors": [
        {
          "type": "User",
          "login": "lorenzopantano",
          "commits": 706,
          "avatar_url": "https://avatars.githubusercontent.com/u/49166985?v=4"
        },
        {
          "type": "User",
          "login": "shadyar-bk",
          "commits": 10,
          "avatar_url": "https://avatars.githubusercontent.com/u/47904282?v=4"
        },
        {
          "type": "User",
          "login": "solaldunckel",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/37122137?v=4"
        },
        {
          "type": "User",
          "login": "An0n-00",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/142223573?v=4"
        }
      ],
      "contributors_sampled": 4,
      "top_contributor_share": 0.981
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "ci.yml",
        "drift.yml",
        "publish.yml"
      ],
      "has_docs_dir": false,
      "linter_configs": [],
      "has_editorconfig": false,
      "has_linter_config": false,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "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": "7 out of 7 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/13 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 0,
            "reason": "project has 0 contributing companies or organizations -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 10,
            "reason": "update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": 10,
            "reason": "packaging workflow detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 0,
            "reason": "dependency not pinned by hash detected -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 0,
            "reason": "SAST tool is not run on all commits -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 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": "19 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "ff370bd464e6f45d6c299875074b45c084d20a1f",
        "ran_at": "2026-07-22T18:14:06Z",
        "aggregate_score": 4.6,
        "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-22T06:34:08Z",
      "oldest_open_prs": [
        {
          "number": 130,
          "created_at": "2026-06-18T07:40:33Z",
          "last_comment_at": "2026-06-18T07:40:38Z",
          "last_comment_author": "vercel"
        }
      ],
      "last_merged_pr_at": "2026-07-17T13:33:24Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": []
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/lorenzopant/tmdb",
    "host": "github.com",
    "name": "tmdb",
    "owner": "lorenzopant"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "moderate",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 65,
      "inputs": {
        "security": 57,
        "vitality": 87,
        "community": 54,
        "governance": 54,
        "engineering": 71
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 87,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "good",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 79,
            "inputs": {
              "commits_last_year": 673,
              "human_commit_share": 0.99,
              "days_since_last_push": 5,
              "active_weeks_last_year": 22
            },
            "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": "22/52 weeks with commits",
                "points": 15.2,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 22
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "673 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 673
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "releases_count": 51,
              "latest_release_tag": "v1.25.0",
              "releases_from_tags": false,
              "days_since_latest_release": 5,
              "mean_days_between_releases": 10.3
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "51 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 51
                    }
                  }
                ],
                "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 ~10.3 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 10.3
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "maintained",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": 5,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 5 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 5
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "moderate",
        "name": "Community & Adoption",
        "value": 54,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 26,
            "inputs": {
              "forks": 5,
              "stars": 20,
              "watchers": 1,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "20 stars",
                "points": 20.7,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 20
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "5 forks",
                "points": 5,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 5
                    }
                  }
                ],
                "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": "excellent",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": true,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (MIT)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "MIT"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 13.5,
                "status": "met",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          },
          {
            "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": 57,
            "inputs": {
              "packages": [
                "@lorenzopant/tmdb"
              ],
              "dependents": null,
              "ecosystems": "npm",
              "total_downloads": null,
              "monthly_downloads": 2688
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "2,688 downloads/month across npm",
                "points": 45.7,
                "status": "partial",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 2688,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 80
              },
              {
                "key": "registry_dependents",
                "name": "Registry dependents",
                "detail": "not reported by this ecosystem",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_reported_by_this_ecosystem",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 54,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "critical",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 15,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 4,
              "top_contributor_share": 0.981
            },
            "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 98% of commits",
                "points": 0.4,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 98
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "4 contributors",
                "points": 5.4,
                "status": "partial",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 4
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 0 contributing companies or organizations -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 84,
            "inputs": {
              "merged_prs": 115,
              "open_issues": 0,
              "closed_issues": 18,
              "issue_closed_ratio": 1,
              "closed_unmerged_prs": 5
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "100% of issues closed",
                "points": 46.8,
                "status": "met",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "115/120 decided PRs merged",
                "points": 36.7,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 115,
                      "decided": 120
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/13 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "at_risk",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 36,
            "inputs": {
              "followers": 0,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "lorenzopant",
              "public_repos": 2,
              "account_age_days": 384
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "0 followers of lorenzopant",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 0,
                      "login": "lorenzopant"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "2 public repos, account ~1 yr old",
                "points": 5.6,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 2
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 1
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "@lorenzopant/tmdb"
              ],
              "ecosystems": "npm",
              "any_deprecated": false,
              "min_days_since_publish": 5
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on npm",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 5 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 5
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "76 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 76
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "good",
        "name": "Engineering Quality",
        "value": 71,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "moderate",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 68,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": false,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "3 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 3
                    }
                  }
                ],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "7 out of 7 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "good",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 75,
            "inputs": {
              "topics": [
                "api",
                "tmdb",
                "tmdb-api",
                "typescript",
                "wrapper",
                "wrapper-api",
                "tmdb-client",
                "tmdb-rest-api",
                "tmdb-ts",
                "typesafe"
              ],
              "has_wiki": true,
              "homepage": "https://tmdb.lorenzopant.dev",
              "has_readme": true,
              "has_docs_dir": false,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": "https://tmdb.lorenzopant.dev",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": "10 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 10
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "moderate",
        "name": "Security",
        "value": 57,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 46,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 17,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 1,
              "scorecard_aggregate": 4.6
            },
            "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": "7 out of 7 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/13 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 0 contributing companies or organizations -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "update tool detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "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": "19 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 664 resolved dependencies against OSV; 32 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": 664
                }
              },
              {
                "code": "advisories_unassessed",
                "params": {
                  "count": 32
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "source": "osv",
              "advisories": 20,
              "affected_packages": 10,
              "assessed_packages": 664,
              "unassessed_packages": 32,
              "affected_by_severity": "high 6, moderate 1, low 3",
              "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": 664,
              "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": 4
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "moderate",
        "name": "AI Readiness",
        "value": 66,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "moderate",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 55,
            "inputs": {
              "has_llms_txt": true,
              "legible_history_share": 0.848,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": "llms.txt present",
                "points": 15,
                "status": "met",
                "details": [
                  {
                    "code": "llms_txt_present",
                    "params": {}
                  }
                ],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "84 of 99 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 84,
                      "sampled": 99
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "moderate",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 61,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "pnpm-lock.yaml"
              ],
              "has_dockerfile": false,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": false,
              "typecheck_configs": [
                "apps/docs/tsconfig.json",
                "packages/tmdb/scripts/tsconfig.json",
                "packages/tmdb/tsconfig.json"
              ],
              "agent_commit_share": 0.28,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0.01
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "apps/docs/tsconfig.json, packages/tmdb/scripts/tsconfig.json, packages/tmdb/tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "apps/docs/tsconfig.json, packages/tmdb/scripts/tsconfig.json, packages/tmdb/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": "28 of the last 100 commits agent-authored or agent-credited",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 28,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "1 of the last 100 commits are automated dependency updates",
                "points": 8,
                "status": "met",
                "details": [
                  {
                    "code": "dependency_bot_commits",
                    "params": {
                      "count": 1,
                      "sampled": 100
                    }
                  }
                ],
                "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": 23819,
              "source_files_sampled": 199,
              "oversized_source_files": 0
            },
            "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": "0/199 source files over 60KB",
                "points": 55,
                "status": "met",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 199,
                      "oversized": 0
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          }
        ],
        "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",
    "deps.dev does not index npm:@lorenzopant/tmdb@1.25.0; advisories assessed against the repository dependency graph instead"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-22T18:14:24.692328Z",
  "schema_version": "0.26.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/l/lorenzopant/tmdb.svg",
  "full_name": "lorenzopant/tmdb",
  "license_state": "standard",
  "license_spdx": "MIT"
}

Оцінки — це сигнали, а не гарантії. Вони відображають публічно видимі практики на GitHub — це не аудит коду й не гарантія безпеки.

Відсутні дані виключаються, а ваги перенормовуються — нуль за відсутність ніколи не ставиться. Методологія версіонована й відкрита: метрики v1.13.0, схема v0.26.0 — повна методологія · вікі метрик.

Як окремий результат виглядає на тлі всього реєстру: сукупна статистикаnpm.