What is hi-base32?
The hi-base32 npm package is a JavaScript library for encoding and decoding data using the Base32 encoding scheme. It is useful for applications that need to encode binary data into a text format that is more easily transmitted over text-based protocols.
What are hi-base32's main functionalities?
Base32 Encoding
This feature allows you to encode a string into Base32 format. The example encodes the string 'Hello, World!' into its Base32 representation.
const base32 = require('hi-base32');
const encoded = base32.encode('Hello, World!');
console.log(encoded); // Outputs: JBSWY3DPEBLW64TMMQ======
Base32 Decoding
This feature allows you to decode a Base32 encoded string back into its original format. The example decodes the Base32 string 'JBSWY3DPEBLW64TMMQ======' back to 'Hello, World!'.
const base32 = require('hi-base32');
const decoded = base32.decode('JBSWY3DPEBLW64TMMQ======');
console.log(decoded); // Outputs: Hello, World!
Other packages similar to hi-base32
base32
The 'base32' package provides similar functionality for encoding and decoding Base32 strings. It is a straightforward and minimalistic library for Base32 encoding and decoding, making it a good alternative to hi-base32.
thirty-two
The 'thirty-two' package is another library for Base32 encoding and decoding. It offers a simple API and is designed to be easy to use, similar to hi-base32. It is a good choice for projects that require Base32 encoding and decoding.
base-x
The 'base-x' package is a versatile library that supports encoding and decoding in various bases, including Base32. It is more flexible than hi-base32 as it can handle multiple encoding schemes, making it suitable for projects that need more than just Base32 encoding.
hi-base32
A simple Base32(RFC 4648) encode / decode function for JavaScript supports UTF-8 encoding.


Demo
Base32 Encode Online
Base32 Decode Online
Download
Compress
Uncompress
Installation
You can also install hi-base32 by using Bower.
bower install hi-base32
For node.js, you can use this command to install:
npm install hi-base32
Usage
You could use like this:
base32.encode('String to encode');
base32.decode('Base32 string to decode');
If you use node.js, you should require the module first:
var base32 = require('hi-base32');
It supports AMD:
require(['your/path/hi-baes32.js'], function (baes32) {
});
TypeScript
import * as base32 from 'hi-base32';
base32.encode('String to encode');
base32.decode('Base32 string to decode');
Methods
base32.encode(input, asciiOnly)
Encode string or bytes to base32, set asciiOnly to true for better performace if it is.
input: String
, Array
, Uint8Array
or ArrayBuffer
Input string or bytes to encode.
asciiOnly: Boolean
(default: false
)
Specify the string encoding is ASCII. It only works when string input.
base32.decode(base32Str, asciiOnly)
Decode base32 string, set asciiOnly to true for better performace.
base32Str: String
Base32 string to decode.
asciiOnly: Boolean
(default: false
)
Specify the string encoding is ASCII.
base32.decode.asBytes(base32Str)
Decode base32 string and return byte Array
base32Str: String
Base32 string to decode.
Example
base32.encode('Man is distinguished, not only by his reason, but by this singular passion from other animals, which is a lust of the mind, that by a perseverance of delight in the continued and indefatigable generation of knowledge, exceeds the short vehemence of any carnal pleasure.');
base32.decode('JBSWY3DP');
base32.decode.asBytes('JBSWY3DP');
base32.encode('äøę');
License
The project is released under the MIT license.
Contact
The project's website is located at https://github.com/emn178/hi-base32
Author: Chen, Yi-Cyuan emn178@gmail.com