
Security News
GitHub Actions Pricing Whiplash: Self-Hosted Actions Billing Change Postponed
GitHub postponed a new billing model for self-hosted Actions after developer pushback, but moved forward with hosted runner price cuts on January 1.
human-format
Advanced tools
Converts a number to/from a human readable string:
1337↔1.34kB
Installation of the npm package:
> npm install --save human-format
Then require the package:
var humanFormat = require("human-format");
You can directly use the build provided at unpkg.com:
<script src="https://unpkg.com/human-format@1/index.js"></script>
humanFormat(1337);
//=> '1.34 k'
// The maximum number of decimals can be changed.
humanFormat(1337, {
maxDecimals: 1,
});
//=> '1.3 k'
// maxDecimals can be set to auto, so that there is 1 decimal between -10 and 10 excluded and none out of this interval.
humanFormat(1337, {
maxDecimals: "auto",
});
//=> '1.3 k'
humanFormat(13337, {
maxDecimals: "auto",
});
//=> '13 k'
// A fixed number of decimals can be set.
humanFormat(1337, {
decimals: 4,
});
//=> '1.3370 k'
// Units and scales can be specified.
humanFormat(65536, {
scale: "binary",
unit: "B",
});
//=> 64 kiB
// There is a helper for this.
humanFormat.bytes(65536);
//=> 64 kiB
// A custom separator can be specified.
humanFormat(1337, {
separator: " - ",
});
//=> 1.34 - k
// Custom scales can be created!
var timeScale = new humanFormat.Scale({
seconds: 1,
minutes: 60,
hours: 3600,
days: 86400,
months: 2592000,
});
humanFormat(26729235, { scale: timeScale });
//=> 10.31 months
// Helper when the scale is regular, i.e. prefixes are powers of a constant factor
var binaryScale = humanFormat.Scale.create(["", "Ki", "Mi", "Gi", "Ti"], 1024);
humanFormat(173559053, { scale: binaryScale });
//=> 165.52 Mi
// You can force a prefix to be used.
humanFormat(100, { unit: "m", prefix: "k" });
//=> 0.1 km
// You can access the raw result.
humanFormat.raw(100, { prefix: "k" });
//=> {
// prefix: 'k',
// value: 0.09999999999999999 // Close value, not rounded.
// }
humanFormat.parse("1.34 kiB", { scale: "binary" });
//=> 1372.16
// Fallbacks when possible if the prefix is incorrectly cased.
humanFormat.parse("1 g");
// => 1000000000
// You can access the raw result.
humanFormat.parse.raw("1.34 kB");
//=> {
// factor: 1000,
// prefix: 'k',
// unit: 'B',
// value: 1.34
//}
Contributions are very welcomed, either on the documentation or on the code.
You may:
Contributors:
ISC © Julien Fontanet
FAQs
Converts a number to/from a human readable string: `1337` ↔ `1.34kB`
The npm package human-format receives a total of 31,024 weekly downloads. As such, human-format popularity was classified as popular.
We found that human-format demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 open source maintainers 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.

Security News
GitHub postponed a new billing model for self-hosted Actions after developer pushback, but moved forward with hosted runner price cuts on January 1.

Research
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.

Security News
Socket CTO Ahmad Nassri shares practical AI coding techniques, tools, and team workflows, plus what still feels noisy and why shipping remains human-led.