npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@piresfernando/base64-cli

v1.0.1

Published

A Node.js utility to generate base64 from strings

Readme

Base64 String Converter

A simple Node.js utility to encode strings to base64 and decode base64 back to strings.

Features

  • ✅ Convert strings to base64 encoding
  • ✅ Decode base64 strings back to original text
  • ✅ Command-line interface (CLI)
  • ✅ Interactive mode
  • ✅ Module exports for use in other projects
  • ✅ Error handling for invalid inputs
  • ✅ Support for Unicode characters

Installation

  1. Clone or download this project

  2. Navigate to the project directory:

    cd base64
  3. (Optional) Install globally to use CLI anywhere:

    npm install -g .

Usage

As a Node.js Module

const { stringToBase64, base64ToString } = require('./index.js');

// Encode string to base64
const encoded = stringToBase64('Hello, World!');
console.log(encoded); // SGVsbG8sIFdvcmxkIQ==

// Decode base64 to string
const decoded = base64ToString('SGVsbG8sIFdvcmxkIQ==');
console.log(decoded); // Hello, World!

Command Line Interface

Basic Commands

# Encode a string to base64
node cli.js encode 'Hello, World!'
# Output: SGVsbG8sIFdvcmxkIQ==

# Decode base64 to string
node cli.js decode 'SGVsbG8sIFdvcmxkIQ=='
# Output: Hello, World!

# Show help
node cli.js help

Interactive Mode

# Run interactive mode
node cli.js

# Then use commands like:
encode Hello World
decode SGVsbG8gV29ybGQ=
help
quit

If Installed Globally

# Encode
base64 encode 'Hello, World!'

# Decode
base64 decode 'SGVsbG8sIFdvcmxkIQ=='

# Interactive mode
base64

Running Examples

# Run the demonstration
node index.js

This will show several examples of encoding and decoding strings, including Unicode characters.

API Reference

stringToBase64(input)

Converts a string to base64 encoding.

  • Parameters:
    • input (string): The string to encode
  • Returns: (string) The base64 encoded string
  • Throws: Error if input is not a string

base64ToString(base64Input)

Converts a base64 string back to the original string.

  • Parameters:
    • base64Input (string): The base64 string to decode
  • Returns: (string) The decoded string
  • Throws: Error if input is not a string or is invalid base64

demonstrateConversion()

Runs a demonstration showing various encoding/decoding examples.

Examples

Basic Usage

const { stringToBase64, base64ToString } = require('./index.js');

// Simple text
console.log(stringToBase64('Hello')); // SGVsbG8=

// Text with spaces
console.log(stringToBase64('Hello World')); // SGVsbG8gV29ybGQ=

// Special characters
console.log(stringToBase64('Hello, World!')); // SGVsbG8sIFdvcmxkIQ==

// Unicode characters
console.log(stringToBase64('🚀 Node.js')); // 8J+agSBOb2RlLmpz

Error Handling

try {
    const result = stringToBase64(123); // This will throw an error
} catch (error) {
    console.log(error.message); // "Input must be a string"
}

try {
    const result = base64ToString('invalid-base64!'); // This will throw an error
} catch (error) {
    console.log(error.message); // "Invalid base64 string"
}

Testing

Run the test file to verify functionality:

node test.js

Dependencies

This project uses only Node.js built-in modules:

  • Buffer - for base64 encoding/decoding
  • readline - for interactive CLI mode

License

MIT License