Real-time detection and removal of AI watermarks, invisible Unicode, and text obfuscation
Features โข How It Works โข Installation โข Usage โข Tech Stack โข Contributing
AI DeWatermarker is a free, open-source tool that detects and removes hidden AI watermarks and text obfuscation from text content. All processing happens locally in your browser - ensuring complete privacy and security. Just visit to use: https://ai-de-watermarker.vercel.app/.

- Zero-Width Characters: Detects invisible tracking characters like Zero Width Space (U+200B), Zero Width Non-Joiner, and more
- Invisible Characters: Finds hidden Unicode like soft hyphens, combining grapheme joiners, and variation selectors
- Homoglyphs: Identifies look-alike characters from different scripts (Cyrillic, Greek, Latin)
- Bidirectional Marks: Detects direction control characters used for text obfuscation
- Suspicious Punctuation: Identifies non-standard quotes, dashes, and ellipsis
- Special Spaces: Finds non-breaking spaces, em spaces, and other unusual whitespace
- Mixed Scripts: Detects mixing of different writing systems
- Control Characters: Identifies C0/C1 control codes and tag characters
- Noise Score: Calculates the percentage of suspicious characters in your text
- Real-time Highlighting: Visual indicators show exactly where issues are detected
- Line Density Analysis: Identifies heavily obfuscated sections
- Pattern Detection: Finds repeating invisible character sequences and unmatched bidi pairs
- Encoded Data Detection: Identifies potential Base64 or hex-encoded watermarks
- Unicode Normalization: Converts text to NFC (Normal Form Composed)
- Homoglyph Replacement: Replaces look-alike characters with standard equivalents
- Whitespace Normalization: Collapses multiple spaces and standardizes line endings
- Control Character Removal: Strips out harmful control codes
- Punctuation Standardization: Converts fancy quotes and dashes to ASCII equivalents
- 100% Client-Side: All processing happens in your browser
- No Data Collection: Your text never leaves your device
- No Server Calls: Works completely offline after initial load
- Open Source: Fully transparent and auditable code
- Paste or type your suspicious text into the input area
- Real-time analysis detects all types of watermarks and obfuscation
- Visual highlights show exactly where issues are found
- Detailed report breaks down each type of detection
- Clean output provides sanitized text ready to copy
- Node.js 18+ and npm/yarn/pnpm
# Clone the repository
git clone https://github.com/maruf009sultan/AI-DeWatermarker.git
# Navigate to the project directory
cd AI-DeWatermarker
# Install dependencies
npm install
# Start the development server
npm run dev
# Build for production
npm run build- Open the application in your browser
- Paste text into the "Suspicious Text" area
- View the real-time detection report on the right
- Copy the cleaned text from the "Cleaned Output" section
-
Noise Score: Higher percentages indicate more obfuscation
- 0-5%: Clean or minimal obfuscation
- 5-10%: Moderate watermark presence
- 10%+: High suspicion of AI watermarking
-
Color Coding:
- ๐ด Red: Invisible characters and bidi marks
- ๐ก Amber: Homoglyphs
- ๐ต Blue: Suspicious punctuation
- ๐ฃ Purple: Special spaces
- Frontend Framework: React 18.3.1 with TypeScript
- Build Tool: Vite 5.4.19
- UI Components: shadcn/ui (Radix UI primitives)
- Styling: Tailwind CSS with custom animations
- State Management: React Query (TanStack Query)
- Routing: React Router DOM
- Form Handling: React Hook Form with Zod validation
- Icons: Lucide React
- Notifications: Sonner
AI-DeWatermarker/
โโโ src/
โ โโโ components/ # Reusable UI components
โ โโโ pages/ # Page components
โ โโโ utils/ # Detection and cleaning utilities
โ โโโ lib/ # Library configurations
โ โโโ hooks/ # Custom React hooks
โโโ public/ # Static assets
โโโ index.html # Entry HTML file
Invisible tracking characters embedded between words or letters to create unique fingerprints.
Using Cyrillic 'ะฐ' (U+0430) instead of Latin 'a' (U+0061) to create visually identical but technically different text.
RTL/LTR override characters that can hide or obfuscate text content.
Contributions are welcome! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
- Follow the existing code style
- Write clear commit messages
- Add tests for new features
- Update documentation as needed
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
- Educational: Learn about Unicode obfuscation techniques
- Practical: Clean text from AI-generated content
- Transparent: Open-source and community-driven
- Fast: Real-time processing with no server delays
- Comprehensive: Detects 14+ types of obfuscation patterns
Made with โค๏ธ for the open-source community. Special thanks to all contributors and users who make this project better.
If you find this project useful, please consider giving it a โญ on GitHub!