Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/andria-dev/pretty-bytes
Format sizes from bytes to human readable strings.
https://github.com/andria-dev/pretty-bytes
Last synced: about 1 month ago
JSON representation
Format sizes from bytes to human readable strings.
- Host: GitHub
- URL: https://github.com/andria-dev/pretty-bytes
- Owner: andria-dev
- Created: 2019-04-22T16:15:28.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-11-22T14:43:27.000Z (about 1 year ago)
- Last Synced: 2024-05-02T04:50:28.135Z (8 months ago)
- Language: JavaScript
- Homepage: https://npm.im/@chbphone55/pretty-bytes
- Size: 66.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# @chbphone55/pretty-bytes
Format sizes from bytes to human readable strings
> ```js
> Convert bytes to human readable strings
> 1032192 → ['1,008', 'KiB', 'kibibytes']
> ```_Note that this package uses base-2 (e.g. kibibyte) so every 1024 bytes is 1 KiB and every 1024 KiB is 1 MiB. [Read about the difference between kilobyte and kibibyte.](https://web.archive.org/web/20150324153922/https://pacoup.com/2009/05/26/kb-kb-kib-whats-up-with-that/)_
## Usage
### Install
To install the package, use a package manager to access the NPM registry.
```bash
pnpm install @chbphone55/pretty-bytes# or
yarn add @chbphone55/pretty-bytes
```### Import
The function is exported as `format`.
```js
import { format } from '@chbphone55/pretty-bytes';// or
const { format } = require('@chbphone55/pretty-bytes');
```### Example
To use `format`, pass it the size of your file in bytes. Optionally, you can pass in a locale as the second argument. _The locale defaults to `en`._
```js
format(0);
// => ['0', 'B', 'bytes']format(-1);
// => ['-1', 'B', 'bytes']format(1024);
// => ['1', 'KiB', 'kibibytes']format(2621440);
// => ['2.5', 'MiB', 'mebibytes']format(1041332);
// => ['1,016.926', 'KiB', 'kibibytes'];format(1041332, 'es');
// => ['1.016,926', 'KiB', 'kibibytes']// You can also use `navigator.language`
format(1041332, navigator.language);
```### API
```ts
format(
// The number to format
size: number,
// The locale to use with `.toLocaleString()`
locale?: string = 'en'
): [string, Units.short, Units.long]namespace Units {
type short = 'B' | 'KiB' | 'MiB' | 'GiB' | 'TiB' | 'PiB' | 'EiB' | 'ZiB' | 'YiB';
type long = 'bytes' | 'kibibytes' | 'mebibytes' | 'gibibytes' | 'tebibytes' | 'pebibytes' | 'exbibytes' | 'zebibytes' | 'yobibytes';
}
```## License
MIT © 2019-2023 Andria Brown