base64

A C++ module for node-js that does base64 encoding and decoding.

npm install base64
4 036 downloads in the last day
21 297 downloads in the last week
96 281 downloads in the last month

Update: this module may no longer be necessary as nodejs includes its own base64 encoding/decoding functions.

This is a node.js C++ module that encodes and decodes to/from base64. Oh, and compared to all other modules, it actually works.

It was written by Peteris Krumins (peter@catonmat.net). His blog is at http://www.catonmat.net -- good coders code, great reuse.


To build the module run:

node-waf configure build

This will produce base64.node binary module. To use it, make sure the module's directory is in NODE_PATH.

The module exports two functions encode and decode.

encode

Encodes a buffer to base64, returns encoded ascii string. Unlike all other base64, it actually works well with binary data. If you're wondering why it takes a buffer as argument, it's because there is no way to pass binary strings to C++ code in a sane way.

Here is a basic example:

var sys = require('sys');
var base64_encode = require('base64').encode;
var Buffer = require('buffer').Buffer;

var buf = new Buffer('hello world');

sys.print(base64_encode(buf));

/* Output: aGVsbG8gd29ybGQ= */

decode

Decodes a buffer containing base64 string, or just a base64 string to original data.

var sys = require('sys');
var base64_decode = require('base64').decode;

sys.print(base64_decode('aGVsbG8gd29ybGQ='));

/* Output: hello world */

SGF2ZSBmdW4hCg==

Sincerely, Peteris Krumins http://www.catonmat.net

npm loves you