
npm पैकेजों के लिए क्रेडिट स्कोर। कोई भी पैकेज इंस्टॉल करने से पहले पैकेज की प्रतिष्ठा, रखरखाव, सुरक्षा, प्रकाशक विश्वसनीयता और इकोसिस्टम स्वास्थ्य का विश्लेषण करें।
npm पैकेजों के लिए क्रेडिट स्कोर।
Revera आपको यह तय करने में मदद करता है कि npm install चलाने से पहले कोई पैकेज इंस्टॉल करने लायक है या नहीं। यह पैकेज की गुणवत्ता, रखरखाव, सुरक्षा, इकोसिस्टम स्वास्थ्य और प्रकाशक विश्वास का विश्लेषण करता है — और अब आपके पूरे डिपेंडेंसी ग्राफ़ में जोखिम को ट्रांज़िटिव रूप से प्रचारित करता है — फिर एक व्याख्या योग्य, बायेसियन प्रतिष्ठा रिपोर्ट तैयार करता है।
Revera को वास्तविक समय में पैकेजों की जाँच और व्याख्या करते हुए देखें।
बिना इंस्टॉलेशन के तुरंत revera चलाएँ:
npx revera check react
request जैसे पैकेज की जाँच करना (जिसे 2020 में डिप्रीकेट किया गया था) विशिष्ट कारणों के साथ तुरंत चेतावनी देता है:
$ revera why request
▲ revera EXPLAIN
──────────────────────────────────────────────────
Package: [email protected]
Overall: 38/100 Not Recommended
Score Breakdown
Maintenance 15/100 ███░░░░░░░░░░░░░░░░░
Release cadence, commit activity, issue responsiveness, maintainer count
Stability 90/100 ██████████████████░░
SemVer compliance, major version history, API volatility over time
Security 100/100 ████████████████████
Known CVEs, install scripts, repository transparency
Package Quality 40/100 ████████░░░░░░░░░░░░
README completeness, license, test coverage indicators, exports
Ecosystem 100/100 ████████████████████
Weekly download volume, GitHub stars, community forks
Documentation 90/100 ██████████████████░░
README length, code examples, API references, external docs presence
Developer Experience 40/100 ████████░░░░░░░░░░░░
TypeScript support, ESM compatibility, CLI tooling
Publisher Trust 100/100 ████████████████████
Known malicious releases, protestware history, supply-chain incidents
Why it scores well
+ Stable API (v1.0.0+)
+ Low API volatility
+ Zero known vulnerabilities
+ Permissive open-source license
+ Code examples in README
+ Structured API documentation
+ No known publisher trust incidents
Minor deductions
- Last release was 59 months ago
- Single maintainer (bus factor of 1)
- Missing native type definitions
- Legacy CommonJS only
- No native typings (bad TypeScript DX)
Warnings
! Last release: 59 months ago. No recent updates detected. This may be normal for mature, stable libraries.
! Package has been officially marked as deprecated by the maintainer.
Verdict
Request has low confidence. revera recommends looking for alternatives due to security, activity, or stability concerns.
किसी भी निर्देशिका से निष्पादन योग्य उपयोग करने के लिए वैश्विक रूप से इंस्टॉल करें:
npm install -g @aaravmaloo/revera
किसी पैकेज का विश्लेषण करें और उच्च-स्तरीय सारांश रिपोर्ट प्राप्त करें:
revera check lodash
कैश की गई फ़ाइलों का उपयोग करके ऑफ़लाइन मोड में चलाएँ:
revera check express --offline
स्कोर, सकारात्मक संकेतों और कटौतियों का गहन विवरण प्राप्त करें:
revera why node-ipc
इंस्टॉलेशन से पहले पैकेजों की स्क्रीनिंग करता है और जब प्रतिष्ठा आपके कॉन्फ़िगर किए गए थ्रेशोल्ड से नीचे गिरती है तो चेतावनी देता है:
revera add express
आप अपने पैकेज मैनेजर को सीधे फ़्लैग पास कर सकते हैं:
revera add typescript --save-dev
वर्तमान प्रोजेक्ट के सभी पैकेजों का ऑडिट करें (ट्रांज़िटिव डिपेंडेंसी सहित) और समग्र प्रोजेक्ट स्वास्थ्य स्कोर की गणना करें:
revera audit
केवल प्रोडक्शन डिपेंडेंसी ऑडिट करें:
revera audit --prod
केवल प्रत्यक्ष डिपेंडेंसी ऑडिट करें, ट्रांज़िटिव डिपेंडेंसी को छोड़ें:
revera audit --direct
GitHub API दर सीमा बढ़ाने के लिए GitHub से प्रमाणित करें (अनाम 60/घंटा बनाम प्रमाणित 5,000/घंटा)। आप ब्राउज़र-आधारित OAuth2 या मैन्युअल रूप से Personal Access Token दर्ज करना चुन सकते हैं। एक बार अधिकृत होने के बाद, revera टोकन को आपके OS कीरिंग (Windows DPAPI, macOS Keychain, या Linux Secret Service) में सुरक्षित रूप से एन्क्रिप्ट और संग्रहीत करता है:
revera login
~/.revera/config.json में सहेजी गई स्थानीय सेटिंग्स प्रबंधित करें:
revera config
revera config set minScoreThreshold 75
revera config get minScoreThreshold
पर्यावरण सेटिंग्स, API स्थिति और नेटवर्क कनेक्शन विलंबता सत्यापित करें:
revera doctor
स्थानीय मेटाडेटा कैश देखें या साफ़ करें:
revera cache
revera cache clear
सत्यापित करें कि आप revera इंजन का नवीनतम संस्करण चला रहे हैं:
revera update
Revera v2 ने पुराने फ्लैट भारित-योग मॉडल को चार-चरणीय बायेसियन DAG पाइपलाइन से बदल दिया।
प्रोजेक्ट के सभी डिपेंडेंसी को एक निर्देशित चक्रीय ग्राफ़ में हल किया जाता है। प्रत्येक नोड अपने पूर्ण ट्रांज़िटिव डिपेंडेंट सेट को ट्रैक करता है ताकि बाद के चरण सटीक ब्लास्ट रेडियस की गणना कर सकें।
lodash ──► your-app
express ──► your-app
axios ──► some-lib ──► your-app ← transitive
8 स्कोरिंग श्रेणियों में से प्रत्येक एक फ्लैट अनजाने बेसलाइन के बजाय आर्केटाइप-विशिष्ट प्रायर (framework, cli, types-only, utility) से शुरू होती है। देखे गए संकेत बीटा वितरण पोस्टीरियर को अपडेट करते हैं — जिसका अर्थ है कि टाइमआउट या लापता डेटा मौन रूप से "साफ" डिफ़ॉल्ट के बजाय विश्वसनीय अंतराल को चौड़ा करता है।
अंतिम प्रति-पैकेज स्कोर श्रेणी पोस्टीरियर का एक विश्वास-भारित समुच्चय (व्युत्क्रम-विचरण भार) है, जो बिंदु अनुमान और 95% विश्वसनीय अंतराल दोनों उत्पन्न करता है।
तीन कठोर ओवरराइड बायेसियन स्कोरिंग को पूरी तरह से बायपास करते हैं और किसी पैकेज को तुरंत अस्वीकार कर देते हैं:
| Veto |
|---|
प्रति-पैकेज स्कोर की गणना के बाद, जोखिम को टोपोलॉजिकल क्रम में (पहले पत्तियां) DAG के माध्यम से नीचे से ऊपर प्रचारित किया जाता है:
effectiveRisk थ्रेशोल्ड से अधिक है, तो उसके पैरेंट का जोखिम 0.8 पर फ़्लोर किया जाता है (दूषित के रूप में चिह्नित)।effectiveRisk × transitive_dependent_count।अंतिम ऑडिट रिपोर्ट आंतरिक स्कोर, विरासत में मिले दूषण, विश्वसनीय अंतराल और ब्लास्ट रेडियस को एक रैंक किए गए आउटपुट में विलीन करती है। समग्र वर्कस्पेस स्कोर ब्लास्ट रेडियस द्वारा भारित औसत है।
Revera प्रत्येक जाँच पर तीन स्वतंत्र भेद्यता डेटाबेस को समानांतर में क्वेरी करता है। परिणामों को स्कोरिंग में उपयोग करने से पहले CVE/GHSA उपनाम द्वारा मर्ज और डीडुप किया जाता है।
यदि कोई स्रोत टाइमआउट या त्रुटि करता है, तो अन्य स्वतंत्र रूप से जारी रहते हैं। VulnResult उजागर करता है कि किन स्रोतों ने प्रतिक्रिया दी (sources) और कौन से विफल रहे (failedSources) ताकि बायेसियन स्कोरर साफ़ मानने के बजाय अनिश्चितता अंतराल को उचित रूप से चौड़ा कर सके।
.github/ # CI configurations
docs/ # Architecture specs and algorithm diagrams
src/
├── commands/ # CLI command handlers (check, why, add, audit, config, cache, update)
├── engine/
│ ├── dag.ts # DAG construction + topological sort + blast-radius computation
│ ├── propagation.ts # Bottom-up transitive risk propagation
│ ├── scoring.ts # Bayesian Beta posteriors, archetype priors, veto checks
│ ├── vuln.ts # Multi-source vuln aggregator (OSV + GitHub + npm)
│ ├── trust.ts # Publisher trust incident database
│ ├── typosquat.ts # Edit-distance typosquat detection
│ ├── npm.ts # npm registry + download stats fetcher
│ └── github.ts # GitHub repo stats + README fetcher
├── ui/ # Console view templates (reporter formatters, theme styles)
└── utils/ # Filesystem helpers (caching, configuration, package managers)
tests/ # Unit test suites
benchmarker/ # Large-scale benchmark suite (100k+ packages)
Revera benchmarker/ में एक अंतर्निहित बड़े पैमाने पर बेंचमार्क सुइट के साथ आता है जो समानांतर में 100k+ npm पैकेजों के विरुद्ध परीक्षण करता है और एकल, GitHub-पठनीय रिपोर्ट तैयार करता है।
cd benchmarker
npm install
npm run fetch-dataset # one-time: pulls ~100k packages into datasets/npm.jsonl
./benchmark.sh --workers 16 # runs the full suite
प्रत्येक रन एक स्व-निहित आउटपुट निर्देशिका तैयार करता है:
v1 बेंचमार्क v2 वीटो जाँच तैनात होने से पहले चलाया गया था। प्रति-लेबल malicious/typosquat संख्याएँ विरासत एल्गोरिथम को दर्शाती हैं। अगले रिलीज़ में पूर्ण v2 पुनः-रन प्रकाशित किया जाएगा।
BENCHMARK.md)टोकन के बिना, अनाम क्वेरीज़ प्रति घंटे 60 अनुरोधों तक सीमित हैं। आप अपने कॉन्फ़िगरेशन में एक Personal Access Token सेट कर सकते हैं:
revera config set githubToken ghp_YOUR_TOKEN
Revera कैश फ़ाइलों का उपयोग करने के लिए वापस आ जाता है। आप --offline फ़्लैग के साथ कमांड को स्पष्ट रूप से ऑफ़लाइन मोड में चला सकते हैं। यदि कोई भेद्यता स्रोत अनुपलब्ध है, तो बायेसियन स्कोरर साफ़ मानने के बजाय उस पैकेज के लिए विश्वसनीय अंतराल को चौड़ा करता है।
Revera एक शेल रैपर के रूप में कार्य करता है। स्क्रीनिंग के बाद यह वास्तविक पैकेज इंस्टॉलर चलाता है।
एक पैकेज तब दूषित के रूप में चिह्नित होता है जब उसकी कोई ट्रांज़िटिव डिपेंडेंसी वीटो ट्रिगर करती है या गंभीर रूप से कम स्कोर करती है। ऑडिट आउटपुट सबसे खराब सबपाथ दिखाता है ताकि आप फ़्लैग का कारण बनने वाली सटीक डिपेंडेंसी श्रृंखला का पता लगा सकें।
प्रत्येक भेद्यता को उसके CVE ID, GHSA ID, या npm advisory ID द्वारा पहचाना जाता है। जब एक ही भेद्यता कई स्रोतों में दिखाई देती है, तो इसे एक विहित प्रविष्टि में मर्ज किया जाता है। गद्य फ़ील्ड (सारांश, विवरण) के लिए OSV डेटा प्राथमिकता लेता है; सभी स्रोतों से उच्चतम गंभीरता रेटिंग और सबसे पूर्ण पैच-संस्करण सीमा संरक्षित की जाती है।
कृपया सेटअप, शैली नियमों और PR दिशानिर्देशों के साथ आरंभ करने के लिए योगदान मार्गदर्शिका देखें।
Revera अवलोकन योग्य प्रोजेक्ट संकेतों और ऐतिहासिक डेटा के आधार पर एक प्रतिष्ठा स्कोर प्रदान करता है। यह इंजीनियरिंग निर्णयों में सहायता करने के लिए है और इसे निश्चित सुरक्षा ऑडिट के रूप में नहीं माना जाना चाहिए।
Revera MIT लाइसेंस के तहत वितरित किया जाता है।
| Feature | npm audit | osv-scanner | Socket | revera |
|---|
| CVE Vulnerabilities | ✔ | ✔ | ✔ | ✔ |
| Multiple Vuln DBs | ✖ | Partial | ✔ | ✔ |
| Ecosystem Reputation | ✖ | ✖ | Partial | ✔ |
| Explainable Scoring | ✖ | ✖ | Partial | ✔ |
| Publisher Trust Check | ✖ | ✖ | Partial | ✔ |
| Typosquat Detection | ✖ | ✖ | Partial | ✔ |
| Transitive Risk Propagation | ✖ | ✖ | ✖ | ✔ |
| Bayesian Confidence Intervals | ✖ | ✖ | ✖ | ✔ |
| Category | Weight | Focus Areas |
|---|
| Security | 20% | Active CVEs (3 DBs), install scripts, repository transparency |
| Publisher Trust | 15% | Protestware history, deliberate sabotage, account hijack incidents |
| Maintenance | 13% | Publish cadence, recent commits, open issues response ratio |
| Stability | 12% | SemVer compliance, major version frequency, pre-1.0 maturity |
| Package Quality | 13% | Source file sizes, license, exports configuration |
| Ecosystem | 13% | Weekly downloads (log-scaled), GitHub stars, contributor count |
| Documentation | 9% | README completeness, code examples, API reference coverage |
| Developer Experience | 5% | Native TS typings, ESM exports, tree-shaking support |
| Trigger |
|---|
| Critical Trust Incident | Publisher has a confirmed supply-chain attack or protestware release |
| Typosquat | Edit distance ≤ 1 from a top-N package (e.g. lodahs, expres) |
| Unpatched Critical CVE | A CRITICAL severity vulnerability with no patched version available |
| Database | Source | Auth Required | Notes |
|---|
| OSV (osv.dev) | Google Open Source Security | ✖ | Aggregates NVD, GitHub Advisory, RUSTSEC, and more |
| GitHub Advisory DB | GitHub Security | ✖ | Rich CVSS scores + patched-version ranges |
| npm Advisory | registry.npmjs.org | ✖ | Same data as npm audit; sometimes publishes before OSV |
| File | Description |
|---|
BENCHMARK.md | Single GitHub-readable report (accuracy, per-label detection, score distribution, latency) |
report.html | Interactive browser report with charts |
summary.json | Machine-readable aggregated stats |
results.jsonl | Per-package results for all tested packages |
comparison.json | Delta vs the previous run (regressions + improvements) |
| Label | Packages | Accuracy |
|---|
trusted | 7,051 | 96.6% |
malicious | 9 | 22.2% (v1 baseline — v2 veto checks fix this) |
typosquat | 20 | 35.0% (v1 baseline — v2 edit-distance veto fixes this) |
| Overall (labeled) | 7,085 | 96.5% |