Skip to content

amnuaym/Base64toImage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Base64 Image Converter Studio

A lightweight, premium Windows desktop application for bidirectional conversion between Base64 text and images. Featuring native Windows clipboard integration, file-drop importing, system theme synchronization, and interactive drag-and-drop sharing.

License: GPL v3 Electron Platform


🚀 Key Features

  • Bidirectional Processing: Convert Base64 strings to images, or import/paste/drag images to encode them back to Base64.
  • Multiple Encoding Formats: Toggle output representation between Plain Base64, Data URL, HTML <img> tag, and CSS background-image properties.
  • Native Context Menus: Right-click context menus for both panels (Undo/Redo/Cut/Copy/Paste/Select All/Clear Workspace for text, and Copy Pixels/File Clip/Save As/Open in Photos/Share/Clear Workspace for images).
  • Multi-Format "Save As" Conversion: Choose to save the decoded image as PNG, JPEG, WebP, or GIF in the Save dialog; the app automatically encodes and converts the image format natively.
  • Explorer Clipboard Integration: Copy the image file reference directly to the clipboard from the app, allowing you to paste the actual image file inside Windows File Explorer using Ctrl+V.
  • Interactive Drag-and-Drop: Drag text/images into the app to decode/encode, or drag the decoded image out of the app directly into external software (Slack, Discord, Photoshop, folders).
  • System Theme Synchronization: The UI dynamically switches between Dark Mode (slate/indigo glassmorphism) and Light Mode (translucent warm white) in response to Windows OS settings.

⌨️ Shortcuts & Interactions

Action / Shortcut Context Description
Ctrl + V (Pasting Image) Anywhere on App Automatically encodes the copied clipboard image to Base64.
Ctrl + V (Pasting Text) Anywhere on App Redirects and pastes the copied text into the Base64 editor and decodes it.
Right-Click Base64 Editor Opens editing context menu (Undo, Redo, Cut, Copy, Paste, Select All, Clear Workspace).
Right-Click Image Panel Opens sharing/file context menu (Copy Pixels, Copy File Clip, Save As, Open, Share, Clear).
Drag Image Drag Handle Click-and-drag the icon out of the app to drop the image file into folders, Slack, or Discord.

📂 Project Directory Structure

Base64toImage/
├── dist/                   # Compiled standalone portable executables
│   └── Base64ImageStudio 1.0.0.exe
├── src/                    # Application source files
│   ├── main.js             # Electron main process
│   ├── preload.js          # Secure Context Bridge
│   ├── renderer.js         # Frontend app logic & canvas converters
│   ├── index.html          # UI markup structure
│   ├── style.css           # Glassmorphism & theme styling
│   ├── logo-132x132.webp   # Custom branding logo
│   ├── temp-icon.png       # Generated runtime taskbar icon (256x256)
│   └── drag-icon.png       # Generated transparent drag handle image
├── .gitignore              # Git file exclusions
├── LICENSE                 # Full GPL-3.0 License text
├── README.md               # User documentation & attributions
├── run_app.bat             # Terminal development launch script
└── start.vbs               # Hidden background development launch script

📦 How to Run

Prerequisites

  • Node.js installed (v24.x or later recommended).

Running the App

  1. Launch Portable Executable (Best): Double-click the compiled standalone executable: Base64ImageStudio 1.0.0.exe inside the dist/ directory. This is a single, self-contained file that runs instantly without showing any command prompt window.
  2. Launch Hidden (Dev Mode): Double-click start.vbs.
  3. Launch with Terminal (Dev Mode): Double-click run_app.bat.
  4. Command Line (Dev Mode): Open your command prompt in this folder and run:
    npm start

Rebuilding the Executable

To compile and bundle the application into the single portable .exe file yourself, run the following command in your terminal:

npm run dist

The packaging output will be written to the dist/ directory.


🛠️ Open Source & Attribution Declarations

This application has been developed with a focus on custom craftsmanship. Apart from the core Electron runtime and typography assets, all application logic, layouts, styling, and bridging code were written 100% from scratch.

Here is the declaration of open-source libraries and resources integrated into this project:

1. Electron Framework (Core Runtime)

  • Purpose: Standalone Win32 desktop application container.
  • Source: Electron GitHub
  • License: MIT License
  • Electron is an open-source framework maintained by the OpenJS Foundation, combining Chromium and Node.js.

2. Outfit Font (UI Typography)

  • Purpose: Modern sans-serif font for buttons, headers, and UI text.
  • Source: Outfit on Google Fonts
  • License: SIL Open Font License, Version 1.1 (OFL)
  • Outfit is an open-source typeface designed by Rodrigo Fuenzalida.

3. Fira Code Font (Code Editor Typography)

  • Purpose: Monospaced font with coding ligatures used in the Base64 editor.
  • Source: Fira Code on Google Fonts
  • License: SIL Open Font License, Version 1.1 (OFL)
  • Fira Code is an open-source monospace font designed by Nikita Prokopov.

4. Custom Application Source Code

  • All frontend layouts, visual design, custom CSS glassmorphism, responsive grid sheets, performance-optimized string parsers, IPC handlers, drag-out triggers, and custom event piping have been written completely from scratch without using third-party UI toolkits (e.g., Bootstrap, Tailwind) or wrapper packages.

⚖️ License & Compatibility

The custom source code developed for this application is licensed under the GNU General Public License, Version 3.0 (GPL-3.0), as defined in the LICENSE file.

License Compatibility & No Conflict Declaration

There are no conflicts between GPLv3 and the open-source dependencies used in this project:

  1. Electron (MIT): The MIT License is a highly permissive license that is fully compatible with GPLv3. Permissive code can be incorporated into a copyleft (GPL) project without restriction.
  2. Outfit & Fira Code Fonts (SIL OFL 1.1): The SIL Open Font License permits bundling the fonts alongside any software, including copyleft/GPL software, as long as the fonts themselves are not sold individually.
  3. Custom Code (GPL-3.0): Since all application-specific stylesheets, layouts, parsers, and IPC configurations were written from scratch, we have full ownership to license them under GPL-3.0.

About

A lightweight, glassmorphic Windows app for encoding images to Base64 (Plain, Data URL, HTML, CSS) and decoding Base64 strings. Features native Explorer pasting and drag-out sharing.

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors