Реєстр у сукупності · метрики 2.10.0

Стан npm.

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

Інспектовані репозиторії
30 347 із 30 347 проіндексованих
Місячні завантаження під інспекцією
524B за даними реєстрів
Медіанний індекс здоров'я
65 Добрий
Добрий або кращий
52% індекс 65 і вище

Розподіл індексу здоров'я

Останній індекс здоров'я кожного інспектованого репозиторію, з кроком п'ять пунктів на шкалі 1–100.

Де зосереджено обсяг завантажень

Сукупні місячні завантаження за діапазонами у зіставленні з кількістю репозиторіїв.

59% місячного обсягу завантажень під інспекцією проходить через репозиторії нижче доброго діапазону — а 1% найзавантажуваніших репозиторіїв несе 48% усього обсягу.

Репозиторії
22%24%23%
Обсяг завантажень
18%20%18%
ДіапазонРепозиторіїЗавантажень / місЧастка обсягу
Винятковий2 01263.5B12%
Відмінний6 63874B14%
Добрий7 14977.3B15%
Помірний7 07093B18%
Слабкий3 632105B20%
У зоні ризику2 78896B18%
Критичний1 05815B2.9%

Форми оцінок

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

Життєздатність73
1100
Спільнота та впровадження49
1100
Сталість та врядування59
1100
Інженерна якість70
1100
Безпека51
1100
Готовність до ШІ62
1100

Профіль категорій

Медіанна оцінка категорії в межах обсягу. Позначки — медіана всього реєстру. Категорії задокументовано у вікі методології.

Життєздатність
73
Спільнота та впровадження
49
Сталість та врядування
59
Інженерна якість
70
Безпека
51
Готовність до ШІбез ваги
62

Стан практики

Частка інспектованих репозиторіїв, де практика публічно помітна. Звіти, старіші за сигнал, виключаються з його основи й ніколи не зараховуються як відсутність.

Інженерна та спільнотна практика

README
95% із 30 347
License detected
91% із 30 347
Automated tests
88% із 30 347
CI workflows
86% із 30 347
Linter configuration
61% із 30 347
Documentation directory
44% із 30 347
Contributing guide
41% із 30 347
Code of conduct
26% із 30 347
Security policy
23% із 30 347

Сигнали агентної ери

AI agent instructions
34% із 30 347
llms.txt
23% із 30 347
One-command bootstrap
18% із 30 347

Сигнали, які читає категорія готовності до ШІ (без ваги в індексі).

Чи означає популярність здоров'я?

Медіанний індекс здоров'я (крапка) і середня половина репозиторіїв (смуга) для кожного інтервалу популярності, на спільній шкалі 1–100.

За зірками GitHub

Under 100 stars 20 174
60 · 45–73
100 – 999 5 965
77 · 59–87
1,000 – 9,999 3 158
86 · 71–92
10,000 and more 1 050
92 · 84–96

За місячними завантаженнями

Under 10K / month 11 108
62 · 48–75
10K – 1M 8 051
73 · 59–86
1M – 100M 3 142
77 · 48–90
100M and more 1 233
50 · 34–77

Безпека під мікроскопом

Середній OpenSSF Scorecard результат за кожною перевіркою в межах обсягу, від найслабших, на шкалі Scorecard 0–10. Результати перевірок здебільшого бінарні, тож середнє відображає, яка частина реєстру проходить перевірку. Перевірки, які Scorecard позначає невизначеними, виключаються з оцінювання й ніколи не зараховуються як нуль; підказка кожного рядка містить його основу.

CII-Best-Practices
0.1
Fuzzing
0.4
Signed-Releases
0.7
Branch-Protection
1.4
SAST
1.8
Code-Review
2.1
Token-Permissions
2.1
Pinned-Dependencies
2.5
Security-Policy
2.9
Vulnerabilities
3.4
Dependency-Update-Tool
4.8
Contributors
6.3
Maintained
6.4
CI-Tests
6.9
License
9.0
Dangerous-Workflow
9.6
Binary-Artifacts
9.7
Packaging
10.0

Тривожні сигнали

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

Припинення супроводу
2 2457.4% реєстру · 7.4% з 30 347 оцінених
Пов’язаність із юрисдикціями високого ризику
4891.6% реєстру · 1.8% з 27 271 оцінених
Шкідливі залежності
1100.4% реєстру · 0.4% з 24 340 оцінених
Неорганічний ріст
5<0.1% реєстру · 1.1% з 445 оцінених

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

Пульс

Наскільки нещодавно кожен інспектований репозиторій востаннє бачив пуш — станом на момент інспекції.

Половина інспектованих репозиторіїв бачила пуш протягом 7 днів до інспекції.

Давність пушу
67%20%
Останній пушРепозиторіїЧастка
Pushed within 30 days20 40467%
31 – 90 days6 11520%
91 – 365 days1 6935.6%
Over a year2 1357.0%

Опіка та стійкість

Хто стоїть за інспектованими репозиторіями та від скількох людей залежить код. Обидва показники читає категорія врядування.

18 206Organization-stewarded медіана 73
12 141Personal accounts медіана 59

Бас-фактор мейнтейнерів

78% інспектованих репозиторіїв залежать від єдиного мейнтейнера в більшості своїх комітів — зокрема 3 084 із понад мільйоном місячних завантажень.

1 мейнтейнер
23 420
2 мейнтейнери
4 248
3–5 мейнтейнера
2 134
6+ мейнтейнерів
382

Айсберг залежностей

Оголошені прямі залежності у зіставленні з повним розв'язаним графом (прямі плюс транзитивні), за 21 818 звітами зі зібраним графом залежностей.

Медіанний репозиторій оголошує 5 прямих залежностей — а розв'язується загалом у 450 пакетів.

Розв'язаних пакетів на репозиторій

0
423
1 – 5
1 040
6 – 20
2 033
21 – 50
1 263
51 – 200
2 500
201 – 500
4 351
501 – 1,000
4 830
Over 1,000
5 378

Ландшафт ліцензій

Найпоширеніші виявлені ліцензії в межах обсягу (ідентифікатори SPDX).

MIT
16 962
Apache-2.0
4 823
Ліцензію не виявлено
2 856
Власна ліцензія
2 687
AGPL-3.0
704
GPL-3.0
579
BSD-3-Clause
440
ISC
359
MPL-2.0
197
GPL-2.0
128

На що покладаються найбільше

Найзавантажуваніші репозиторії під інспекцією, що публікуються в npm — записи, що важать найбільше в наведених вище цифрах. Решту охоплює повний каталог · покажчик тегів.

npm
50Помірнийіндекс здоров'я
jridgewell/sourcemaps
Monorepo for various sourcemap libraries
TypeScript · JavaScript★ 56↓ 3.8B/міс21 жовт. 2026 р.
Без ліцензії21 жовт. 2026 р. · метрики 2.10.0
npm
89Відміннийіндекс здоров'я
npm/node-semver
The semver parser for node (the one npm uses)
JavaScript★ 5 472↓ 3.6B/міс21 жовт. 2026 р.
ISC21 жовт. 2026 р. · метрики 2.10.0
npm
99Винятковийіндекс здоров'я
typescript-eslint/typescript-eslint
:sparkles: Monorepo for all the tooling which enables ESLint to support TypeScript
TypeScript★ 16.4K↓ 3.6B/міс24 жовт. 2026 р.
MIT24 жовт. 2026 р. · метрики 2.10.0
npm
93Винятковийіндекс здоров'я
eslint/js
Monorepo for the JS language tools.
JavaScript★ 2 387↓ 3.3B/міс21 жовт. 2026 р.
BSD-2-Clause21 жовт. 2026 р. · метрики 2.10.0
npm
98Винятковийіндекс здоров'я
babel/babel
🐠 Babel is a compiler for writing next generation JavaScript.
TypeScript · JavaScript★ 44K↓ 3.2B/міс24 жовт. 2026 р.
MIT24 жовт. 2026 р. · метрики 2.10.0
npm
75Добрийіндекс здоров'я
isaacs/minimatch
a glob matcher in javascript
JavaScript · TypeScript★ 3 526↓ 3B/міс21 жовт. 2026 р.
BlueOak-1.0.021 жовт. 2026 р. · метрики 2.10.0

Як читати ці цифри

  • Кожна цифра обчислена з останньої опублікованої інспекції кожного репозиторію за версіонованою методологією (наразі метрики 2.10.0). Див. методологію · шкалу діапазонів.
  • Статистика описує інспектований реєстр — програмне забезпечення, допущене до інспекції, а не випадкову вибірку всього відкритого коду. Допуск відбувається за критеріями суспільного інтересу.
  • Показники завантажень надходять від реєстрів пакетів; реєстри, що не публікують місячних чисел (Maven Central, Go, NuGet, RubyGems), не додають обсягу — а не нуль. Покриття за екосистемами задокументовано в переліку підтримуваних екосистем.
  • Якщо сигнал у звіті недоступний — незібраний граф залежностей, невизначена перевірка Scorecard, звіт, старіший за сигнал, — репозиторій виключається з основи цієї цифри й ніколи не зараховується проти неї.
  • Індекси здоров'я — це сигнали публічно видимої практики, а не аудити чи гарантії; як їх читати, пояснює стаття індекс здоров'я.
  • Цифри обчислено 2026-10-25 09:41 UTC; сукупні показники перераховуються щогодини. Вихідні дані доступні як JSON.