A powerful GUI tool for obfuscating and deobfuscating code strings with clipboard integration
Project description
CodeBlur
A powerful GUI tool for obfuscating and deobfuscating code strings with intelligent clipboard integration. Perfect for anonymizing code samples, protecting sensitive information, or sharing code snippets safely.
Features
- 🎨 Clean Neubrutalist UI - Modern, minimalist design with bold colors
- 🔄 Auto-Obfuscate Strings - Automatically replace all string literals with AI-like identifiers
- 🗑️ Remove Comments - Strip comments from code in all major languages
- 📋 Clipboard Integration - Ctrl+V to load, one-click to copy
- ↩️ Undo Support - Ctrl+Z to undo up to 20 actions
- 🎯 Click to Obfuscate - Click any word to obfuscate/deobfuscate it
- 💾 Persistent Mappings - Mappings saved automatically for consistency
- 🟢 Deobfuscate Button - Restore original text with one click
Installation
pip install codeblur
Usage
Launch the application:
codeblur
Or run from Python:
from codeblur import main
main()
Keyboard Shortcuts
- Ctrl+V - Load text from clipboard
- Ctrl+Z - Undo last action
Buttons
- COPY AND CLOSE - Copy obfuscated text to clipboard and exit
- AUTO-OBFUSCATE STRINGS - Automatically obfuscate all string literals
- REMOVE COMMENTS - Remove all comments from code
- DEOBFUSCATE - Show and copy deobfuscated text (restores original strings)
- CLEAR - Clear all mappings (2-click confirmation)
Supported Languages
Comment removal works with:
- C, C++, C#, Java, JavaScript, Go, Rust, Swift, Kotlin
- Python, Ruby, Perl, Shell scripts
- HTML, XML
- SQL, Lua, Visual Basic
How It Works
- Load Code: Press Ctrl+V or paste code into the editor
- Obfuscate: Click "AUTO-OBFUSCATE STRINGS" or click individual words
- Remove Comments: Optional - click "REMOVE COMMENTS"
- Copy: Click "COPY AND CLOSE" to copy and exit
- Deobfuscate: Click "DEOBFUSCATE" to restore original text
Example
Before:
var response = await client.GetAsync("/api/users");
// Fetch user data
Console.WriteLine("Request completed");
After Auto-Obfuscate:
var response = await client.GetAsync("PERSON001");
// Fetch user data
Console.WriteLine("ID001");
After Remove Comments:
var response = await client.GetAsync("PERSON001");
Console.WriteLine("ID001");
Features in Detail
Auto-Obfuscate Strings
- Skips interpolated strings (preserves
{variables}) - Skips strings inside comments
- Generates identifiers like PERSON001, ENTITY042, ORG003
- Consistent mapping - same string always gets same identifier
Click to Obfuscate/Deobfuscate
- Click any word to obfuscate it
- Click an obfuscated identifier to restore original
- Blue highlighting shows obfuscated text
Undo System
- Tracks up to 20 actions
- Restores both text and mappings
- Press Ctrl+Z to undo
2-State Clear Button
- First click: Button turns red "CONFIRM CLEAR?"
- Second click: Executes clear operation
- Auto-resets after 3 seconds
License
MIT License
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file codeblur-1.0.2.tar.gz.
File metadata
- Download URL: codeblur-1.0.2.tar.gz
- Upload date:
- Size: 25.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fa682676689cb942444c06d35cb15e36fa1780cb84449155214ef5767da5765a
|
|
| MD5 |
4cd286a7ce06bef4f5f1f0799a8986c6
|
|
| BLAKE2b-256 |
12359d5d5e0be788240b8216b83824cfd416edadd94c873dada188153f9d0c24
|
File details
Details for the file codeblur-1.0.2-py3-none-any.whl.
File metadata
- Download URL: codeblur-1.0.2-py3-none-any.whl
- Upload date:
- Size: 23.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
255d2c00c82e4b37adc7f75cf6ef32d7b408351e614ff632564b0737f3b75ec8
|
|
| MD5 |
b316d802af025e4c0a545b44772d5f9e
|
|
| BLAKE2b-256 |
902f46bf0149dd618a6cba0d8d2d6d4fa0ccc01b1008f98c2b3ed1fa288883db
|