MagicPad is an OpenPGP encryption / decryption tool for beginners. It is designed to be run standalone via the browser or as an executable (Electron). Using PGP as the main encryption engine, the encryption key generated in MagicPad are powerful 4096-bit keys.
- No data collection. Can be used offline. Available as a Chrome offline app, mobile progressive web app, and executables (Windows x64, macOS x64, .deb x64, .rpm x64). No server-side interaction.
- Create, upload, and search for PGP keys.
- Easy to understand language. You want to read, write, or attach a file?
- Mobile friendly (Progressive web app). Can be saved to home screen. Tested on Android and iOS.
- Store keys as images as well as hide and reveal encrypted messages in images.
You can run MagicPad four ways:
- Download executable at
- Clone and run
./app/index.htmlvia web browser
- Clone, build and run executable (saved at
npm install npm run dist
To only build html/css/js without running electron, run:
npm run buildwebapp
If building from Ubuntu, run this first:
sudo apt-get install rpm
- Run Electron via Node from command line (you need Electron globally installed):
npm i -g magicpad npm i -g electron magicpad
In the build procedure, the following happens:
- HTML files in the
./html_srcfolder are combined into a single
- JS files in
./app/jsare added as
index.html. (Step 1 and 2 are controlled by
index.htmlis saved to
- All other files are static in
./appand are not altered.
- Electron executable is created in a
If you want to host your own MagicPad PWA, you must edit the
manifest.json file in
- url, path, fs-extra, ncp, and jsdom packages
- Electron, Electron Context Menu, and Electron builder
- Font and design styling by IBM
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.