Digi-Cloak

July 31, 2026 · View on GitHub

Digi-Cloak logo

Digi-Cloak

License: MIT Angular TypeScript PWA

Hide secrets in plain sight.

A free, open-source web app that tucks your private messages inside ordinary images — guarded by AES encryption and LSB steganography, so what you share looks like nothing more than a picture.

Try it live


Features

  • AES encryption — your message is scrambled with AES using a secret password only you know.
  • LSB steganography — the encrypted bytes are woven into an image's pixels, invisible to the eye.
  • Share anywhere — send the image anywhere; without your password it is just a picture.
  • Client-side only — everything runs 100% in your browser; no uploads, no servers, no tracking.
  • PWA — installable and offline-ready on any device.

How It Works

  1. Encrypt — your message is scrambled with AES using a secret password only you know.
  2. Hide — the encrypted bytes are woven into an image's pixels via LSB steganography, invisible to the eye.
  3. Share — send the image anywhere; without your password it is just a picture.
  4. Reveal — drop the image back in, enter the password, and the secret reappears.

Everything runs 100% in your browser — no uploads, no servers, no tracking.

Tech Stack

AreaTools
FrameworkAngular 22 · TypeScript · RxJS
StylingTailwind CSS 4 · PostCSS
Cryptographycrypto-js (AES)
SteganographyCustom LSB encoder on the Canvas API, run in a Web Worker
PWAAngular Service Worker (installable, offline-ready)
TestingKarma + Jasmine (unit) · Playwright (e2e)
Toolingpnpm · ESLint · Prettier
HostingGitHub Pages

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development purposes.

Requirements

To install and run this project you need:

  • Node.js ^22.22.3 || ^24.15.0 || >=26.0.0 (an .nvmrc is included — run nvm use if you use nvm)
  • pnpm
  • git (only to clone this repository)

Installation

To set up everything on your local machine, follow these steps:

  1. Clone this repo and then change directory to the digi-cloak folder:
git clone https://github.com/kaushalmeena/digi-cloak.git
cd digi-cloak
  1. Install project dependencies using pnpm:
pnpm install

Running

To run the project simply run:

pnpm dev

Your app should now be running on localhost:4200.

Testing

To lint, check formatting and typecheck together:

pnpm check

To run the unit tests:

pnpm test

To run the end-to-end tests (Playwright):

pnpm exec playwright install chromium   # first time only
pnpm e2e

Building

To create a production build:

pnpm build

The build output is written to the dist folder.

Contributing

Contributions are welcome! If you find a bug or have a feature request, please open an issue first to discuss it. For code changes, fork the repository, create a branch, and open a pull request.

License

This project is licensed under the MIT License — see the LICENSE file for details.