Skip to content

SamTheTechi/Stagno

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Steganography Tool

A web application for hiding and extracting secret messages in images using steganography.

Features

  • ** Encode Messages**: Hide secret text messages inside images without visible changes
  • ** Decode Messages**: Extract hidden messages from images that contain secret data
  • ** Modern UI**: Beautiful dark theme with smooth animations using Framer Motion
  • ** Responsive**: Works perfectly on desktop and mobile devices

How It Works

This tool uses LSB (Least Significant Bit) steganography to hide text messages in the red channel of image pixels. The changes are imperceptible to the human eye but can be decoded by the algorithm.

Usage

Encoding a Message

  1. Go to the Encode page
  2. Select an image file (PNG, JPG, etc.)
  3. Enter your secret message
  4. Click "🔐 Encode Message"
  5. Download the encoded image

Decoding a Message

  1. Go to the Decode page
  2. Select an image that contains a hidden message
  3. Click "🔓 Decode Message"
  4. The hidden message will be displayed
  5. Copy the message to clipboard if needed

Tech Stack

Frontend

  • React - UI framework
  • TypeScript - Type safety
  • Framer Motion - Smooth animations
  • React Router DOM - Client-side routing
  • CSS3 - Styling with CSS variables

Backend

  • FastAPI - Modern Python web framework
  • Pillow (PIL) - Image processing
  • Uvicorn - ASGI server
  • Python Multipart - File upload handling

Project Structure

stagno/
├── backend/
│   ├── main.py          # FastAPI application
│   ├── stagno.py        # Steganography algorithms
│   ├── requirements.txt # Python dependencies
│   └── .venv/          # Virtual environment
└── frontend/
    ├── src/
    │   ├── components/  # React components
    │   ├── App.tsx     # Main app component
    │   ├── App.css     # Styles
    │   └── main.tsx    # Entry point
    ├── package.json    # Node dependencies
    └── vite.config.ts  # Vite configuration

License

This project is open source and available under the MIT License.