Digi-Cloak
July 31, 2026 · View on GitHub
Digi-Cloak
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.
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
- Encrypt — your message is scrambled with AES using a secret password only you know.
- Hide — the encrypted bytes are woven into an image's pixels via LSB steganography, invisible to the eye.
- Share — send the image anywhere; without your password it is just a picture.
- 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
| Area | Tools |
|---|---|
| Framework | Angular 22 · TypeScript · RxJS |
| Styling | Tailwind CSS 4 · PostCSS |
| Cryptography | crypto-js (AES) |
| Steganography | Custom LSB encoder on the Canvas API, run in a Web Worker |
| PWA | Angular Service Worker (installable, offline-ready) |
| Testing | Karma + Jasmine (unit) · Playwright (e2e) |
| Tooling | pnpm · ESLint · Prettier |
| Hosting | GitHub 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.nvmrcis included — runnvm useif you use nvm) - pnpm
- git (only to clone this repository)
Installation
To set up everything on your local machine, follow these steps:
- Clone this repo and then change directory to the
digi-cloakfolder:
git clone https://github.com/kaushalmeena/digi-cloak.git
cd digi-cloak
- 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.