Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
average-rating
Advanced tools
Calculate average and scoring based on Wilson Score Equation
Node.js
npm i average-rating
# pnpm
pnpm i average-rating
# yarn
yarn add average-rating
CDN
import {
score,
rate,
average
} from 'average-rating'
// with CommonJS environment
// const { score, rate, average } = require('feed-reader/dist/cjs/average-rating.js')
score(80, 20) // => 0.71
average([134055, 57472, 143135, 365957, 1448459]) // => 4.4
rate([134055, 57472, 143135, 365957, 1448459]) // => 0.84
Since Node.js v14, ECMAScript modules have became the official standard format. Just ensure that you are using module system and enjoy with ES6 import/export syntax.
Currently ECMAScript modules work fine on almost browsers:
<script type="module">
import { average } from 'https://unpkg.com/average-rating/dist/average-rating.esm.js'
average([134055, 57472, 143135, 365957, 1448459])
</script>
With outdated browsers, we can use traditional way:
<script type="text/javascript" src="https://unpkg.com/average-rating/dist/average-rating.min.js"></script>
<script>
const { average } = window.AverageRating
average([134055, 57472, 143135, 365957, 1448459])
</script>
Example:
// get Winson score for a pair of (Positive, Negative) voting
score(0, 1000) // --> 0
score(1000, 0) // --> 0.96
score(1000, 1000) // --> 0.48
// from 1 to 5 stars
const rating = [134055, 57472, 143135, 365957, 1448459]
rate(rating) // --> 0.84
// calculate average
average(rating) // --> 4.4
Return a value from 0 to 1.
Used for the systems of Positive/Negative rating, such as the videos on YouTube, the answers on StackOverflow, etc. In which, each of item can be voted as good or bad, like or dislike or something like that.
Return a value from 0 to 1.
Used for the systems of 5 rating levels, such as the applications on Google Play store, the books on Amazon, etc. In which, each of item can be voted as one of value in the range of 1 to 5 stars.
rate
method accepts custom range of ratings. 5 or more values are OK.const input = [3, 4, 2, 6, 12, 46, 134, 213, 116, 91, 45, 15, 58, 96, 1654] // 15 values
rate(input) // => 0.85
rate([3, 4, 2, 6, 12, 46, 134, 213, 116, 91]) // => 0.74
Return a value from 0 to 5.
Calculate normal average value for the systems of 5 rating levels.
git clone https://github.com/ndaidong/average-rating.git
cd average-rating
npm install
npm test
The MIT License (MIT)
FAQs
Calculate average score and rating based on Wilson Score Equation
The npm package average-rating receives a total of 48 weekly downloads. As such, average-rating popularity was classified as not popular.
We found that average-rating demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.