Socket
Socket
Sign inDemoInstall

b64u

Package Overview
Dependencies
0
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    b64u

Tiny, lightweight module for encoding and decoding Base64 URLs


Version published
Weekly downloads
6.2K
increased by1.81%
Maintainers
1
Install size
9.41 kB
Created
Weekly downloads
 

Changelog

Source

v3.0.0

  • Require Node 8+

Readme

Source

⚡ b64u

Build Status npm npm license Powered by TypeScript

A tiny, lightweight module for encoding and decoding Base64 URLs (RFC 4648). Supports TypeScript, but also works without it.

NOTE: if you were previously using the unmaintained base64url package, this library is API-identical.

Requirements

  • NodeJS 8+

Installation

Install via yarn:

yarn add b64u

Or via NPM:

npm install --save b64u

Example

import b64u from 'b64u'

b64u('A tiny, lightweight module')
// 'QSB0aW55LCBsaWdodHdlaWdodCBtb2R1bGU'

b64u.encode('A tiny, lightweight module')
// 'QSB0aW55LCBsaWdodHdlaWdodCBtb2R1bGU'

b64u.decode('Zm9yIGVuY29kaW5nIGFuZCBkZWNvZGluZyBCYXNlNjQgVVJMcw')
// 'for encoding and decoding Base64 URLs'

b64u.toBase64('QSB0aW55LCBsaWdodHdlaWdodCBtb2R1bGU')
// 'QSB0aW55LCBsaWdodHdlaWdodCBtb2R1bGU='

b64u.fromBase64('QSB0aW55LCBsaWdodHdlaWdodCBtb2R1bGU=')
// 'QSB0aW55LCBsaWdodHdlaWdodCBtb2R1bGU'

b64u.toBuffer(b64u('tiny'))
// <Buffer 74 69 6e 79>

Usage

Either require or import the library:

const b64u = require('b64u')
import b64u from 'b64u'

API

b64u(input: string | Buffer, encoding = 'utf8'): string
b64u.encode(input: string | Buffer, encoding = 'utf8'): string

Encodes an input string or buffer into a Base64 URL. Optionally specify an encoding.

Example

b64u('A tiny, lightweight module')
// 'QSB0aW55LCBsaWdodHdlaWdodCBtb2R1bGU'

b64u.encode('A tiny, lightweight module')
// 'QSB0aW55LCBsaWdodHdlaWdodCBtb2R1bGU'
b64u.decode(input: string | Buffer, encoding = 'utf8'): string

Decodes an input Base64 URL into a raw string. Optionally specify an encoding.

Example

b64u.decode('Zm9yIGVuY29kaW5nIGFuZCBkZWNvZGluZyBCYXNlNjQgVVJMcw')
// 'for encoding and decoding Base64 URLs'
b64u.toBase64(input: string): string

Converts an input Base64 URL into a plain Base64 string.

Example

b64u.toBase64('QSB0aW55LCBsaWdodHdlaWdodCBtb2R1bGU')
// 'QSB0aW55LCBsaWdodHdlaWdodCBtb2R1bGU='
b64u.fromBase64(input: string): string

Converts an input plain Base64 string into a Base64 URL.

Example

b64u.fromBase64('QSB0aW55LCBsaWdodHdlaWdodCBtb2R1bGU=')
// 'QSB0aW55LCBsaWdodHdlaWdodCBtb2R1bGU'
b64u.toBuffer(input: string): Buffer

Converts an input Base64 URL into a Buffer with the raw bytes.

Example

b64u.toBuffer(b64u('tiny'))
// <Buffer 74 69 6e 79>

Background

This library began as an API-identical fork of the base64url package, as that package has not been updated since 2016 and currently suffers from a critical issue that prevents its use with TypeScript and any version of NodeJS other than Node 6.0.0.

Why the name, b64u? It's a tiny, lightweight name for a tiny, lightweight module!

License

The MIT license. See LICENSE.

Copyright (c) 2018 Jacob Gillespie

Copyright (c) 2013–2016 Brian J. Brennan

Keywords

FAQs

Last updated on 24 Dec 2019

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc