πŸ‘» Introducing Stegaboo β€” Hide Harmless ...

πŸ‘» Introducing Stegaboo β€” Hide Harmless Secrets in Plain Sight (with a Smile)

May 22, 2025

image

Stegaboo is a playful command-line tool for image-based steganography, powered by Python, Typer, and Rich.

✨ What Is Stegaboo?

Stegaboo is a lightweight, expressive, and user-friendly CLI tool that lets you hide short messages inside image files using LSB (Least Significant Bit) steganography.

But this isn’t your average encryption tool. Stegaboo:

  • Comes with a charming personality and ghostly flair πŸ‘»

  • Includes built-in sample images to get you started instantly

  • Provides helpful hints, splash screens, and styled output

  • Handles missing files and config gracefully

  • Encourages creativity and exploration β€” not secrecy

Whether you’re learning about steganography, building CLI tools, or just want to tuck a note into a PNG like a secret scroll, Stegaboo invites you to play.

πŸ›‘ Safety Notice

Stegaboo is for educational and playful use only.
Do not use it to store sensitive, personal, or confidential data.
This ghost is friendly β€” not secure.


πŸš€ Features

  • βœ… Encode messages into PNG images (lossless)

  • βœ… Decode messages with automatic corruption warnings for JPEGs

  • βœ… Custom output paths with fallback to a default folder

  • βœ… Human-friendly CLI with Rich-styled panels and emoji

  • βœ… Automatically creates a settings.json config file on first run

  • βœ… Comes with sample files to try encoding and decoding out of the box

  • βœ… Fully tested with graceful error handling

  • βœ… --version flag, splash screen, and smart defaults


πŸ“¦ Installation

Clone and install in editable mode:

git clone https://github.com/Jnxvln/stegaboo.git

cd stegaboo

python -m venv .venv

source .venv/bin/activate # Or .venv\\Scripts\\activate on Windows

pip install -e .

πŸ’» Getting Started

Show the splash screen:

stegaboo

πŸ‘οΈ View command help:

stegaboo --help

stegaboo encode --help

stegaboo decode --help

πŸ§ͺ Sample Images Included

lil_boo.png β€” A friendly ghost, use this to practice encoding

outputs/note_boo.png β€” Already encoded with a secret message for decoding


πŸ“– Full Usage Scenario

βœ… 1. Encode a message into an image

stegaboo encode lil_boo.png "I see you, boo!"

βœ… Output saved to outputs/encoded_lil_boo.png
(Stegaboo auto-generates the folder if it doesn't exist)

πŸ› οΈ 2. Specify a custom output path (optional)

stegaboo encode lil_boo.png "Meet me at midnight" -o secrets/midnight.png

βœ… Automatically saves to secrets/midnight.png (and creates secrets/ if missing)

πŸ” 3. Decode a message

stegaboo decode outputs/encodedlilboo.png

βœ… Displays the hidden message, if present

πŸ’Ύ 4. Save the decoded message to a file

stegaboo decode outputs/encodedlilboo.png --save-message my_note.txt

βœ… Writes the message to my_note.txt

πŸ“ 5. Show or update your default output location

stegaboo where

stegaboo set where ./my_outputs

βœ… Updates settings.json with your preferred save path
(Stegaboo creates this config file automatically if it doesn’t exist)

πŸ§ͺ Run the Test Suite

pytest

Stegaboo includes tests for:

  • Functional encoding/decoding

  • Error handling (missing files, invalid image formats)


πŸ‘» Give the Ghost a Tip

If Stegaboo made you smile, whisper, or mutter β€œokay that’s kinda cool”...

β˜• Buy Me a Coffee

Even spirits run on caffeine and validation.


πŸ› οΈ Project Link

πŸ”— View the full source on GitHub

Enjoy this post?

Buy UncompiledSelf a coffee

More from UncompiledSelf

PrivacyTermsReport