Artisanal text corruption, served fresh!
Find a file
Ole-Morten Duesund cb7c456a8f Remove clear button to simplify UI
The clear button was unnecessary clutter - users can simply select and delete
text in the input field if they want to clear it.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-18 20:56:49 +02:00
app Remove clear button to simplify UI 2025-08-18 20:56:49 +02:00
.eslintrc.json Enhance mobile experience and add zalgo text variants 2025-08-18 20:30:05 +02:00
.gitignore Initial commit: Text Corruptor PWA 2025-08-18 20:00:58 +02:00
.prettierrc Initial commit: Text Corruptor PWA 2025-08-18 20:00:58 +02:00
bun.lock Initial commit: Text Corruptor PWA 2025-08-18 20:00:58 +02:00
CLAUDE.md Fix manifest icon references and add file reference linter 2025-08-18 20:18:51 +02:00
justfile Fix HTML validation in justfile 2025-08-18 20:24:02 +02:00
LICENSE Add MIT License 2025-08-18 20:35:39 +02:00
lint-references.py Fix manifest icon references and add file reference linter 2025-08-18 20:18:51 +02:00
package.json Initial commit: Text Corruptor PWA 2025-08-18 20:00:58 +02:00
README.md Add comprehensive easter egg system with mobile optimization 2025-08-18 20:49:44 +02:00
server.py Fix ESLint warning and achieve perfect code quality 2025-08-18 20:14:45 +02:00

Ǧ̴̝̲̙̱̳̗̱͊̒̀̀̀l̶̰̲̯̗̾̊͌̀̊̃̓̚i̴̧̘͕̺͉̘̇̃̄̏͂̃͛̎̐t̷̢̨̙̗̞̯͖̗̳͌c̷̖͓̟̞͋h̷̨̻̝̻̩̼̤̣̟̓͗̑͝C̴̺̺̘͍̙̈͐̀̾̔̈́̒̃r̷̢̧̢̛̬̱̻̝̭̈́̍̐͒̇ā̸̤̜͌̓̋̉̓̉̚f̸̘̘̤͙̠̈́̐̍̀͋͊̕͝t̸̨̹̪̭̲̮̗̳̽̎

Artisanal text corruption, served fresh!

Transform your boring text into b̴̧̧̯̰̲̤̫̲͇̅̀̓̆̈́̈́̄̀e̵̫̥̱̿̾̊̉͊́̚a̸̫̺̘̤̰̝̿̐̍͗̇̋u̸̢̳̝̯̲̮̦̇̍̔̈́̎̊t̸̨̲̘̺̹̙̋͆̀̅̚i̸̧̦̩̥̫̭̬̍̑̎́̒f̵̰̰̺̹̤̋ù̴̧̡̢̘̱̇͛̉̇̂͌l̶̺̩̰̥̀̉̄̄̈́͝ć̵̨̧̦̞̤̤̠̃́̔̀͝h̴̭̙̋̊̾͛́a̴̻̦̹̰̖̅̀͌̃ō̴̳̜̝̮͇͍̄̓̋͌̍̔s̷̘̺̤̩͂̽̌̅̈͠! GlitchCraft is a Progressive Web App that generates zalgo text using Unicode combining characters.

F̴̛̪̞̯̀̔́ͅe̷̮̮̗̣̎a̸̤̺̜̾̃̓͜t̶̛̘̝̾u̴̢̬͇̒ṛ̴̭̖̈́e̷̲̺̔̓͝ş̷̝̑̀

  • 🎨 Six Corruption Modes: From subtle glitches to complete chaos
  • 📱 Mobile-First Design: Perfect experience on all devices
  • Real-Time Generation: See corruption as you type
  • 📋 One-Click Copy: Tap the output to copy instantly
  • 🔧 Adjustable Intensity: Fine-tune your chaos level (1-10)
  • 💾 PWA Ready: Install as an app, works offline
  • 🌐 Universal Support: Works on all modern browsers

🎭 Corruption Modes

Mode Example Description
Full Chaos ĥ̵̝̮̀è̸̘̩l̴̹̩̔l̵̲̎ô̶̰ ̷̳̎w̸̰̄o̶̜̅r̷̰̄l̴̨̾d̶̰̈ Balanced corruption above, middle, and below
Above Only h̸̘̤́ë̸́l̴̮̆l̸̘̀ö̴́ ̶̘̀w̴̮̌ö̴́ř̶̰l̴̮̀d̸̮̆ Marks above characters only
Below Only h̴̖̆ë̵l̵̰l̵̲ö̴ ̷̰w̴̰ö̴̰r̴̲l̵̲d̴̰ Marks below characters only
Middle Only h̶e̷l̷l̶o̵ ̴w̵o̴r̷l̴d̵ Marks overlaying characters
Mini Glitch ḧ̴e̵l̴l̷o̵ ̴w̶o̴r̷l̴d̵ Subtle corruption
Heavy Corruption h̸̨̬̘̤̖̱̗̘̄̀́̌̈́̀̇̚ë̴̛̖̘̩̰̱̳̤́̓̒̚l̷̢̧̰̲̫̲̝̹̈́̔̃̀̈́̇̚l̴̢̧̰̲̫̲̝̹̈́̔̃̀̈́̇̚ö̴́̓̒̚ ̷̰̔̈́w̸̰̄̌ö̴́̓̒̚r̷̰̄̌l̴̰̔̈́d̶̰̈́̌ Maximum chaos overload

🚀 Quick Start

🌐 Online

Visit the deployed app at: [Your deployment URL]

💻 Local Development

# Clone the repository
git clone <your-repo-url>
cd zalgo

# Install dependencies
just install
# or: bun install

# Start development server
just serve
# or: python3 server.py

# Open http://localhost:8000

🛠️ Development

Prerequisites

  • Bun (for dependencies and linting)
  • Python 3 (for development server)
  • Just (for task automation, optional)

Available Commands

# Development
just serve              # Start development server
just serve-bg           # Start server in background
just stop               # Stop background server

# Code Quality
just lint-all           # Lint JavaScript and Python
just format-all         # Format all code
just check-all          # Run all linting and validation

# Testing & Validation
just validate           # Full validation suite
just validate-references # Check file references exist
just validate-html      # Validate HTML (requires Java)
just validate-manifest  # Validate PWA manifest

# PWA Icons
just icons-png          # Generate PNG icons (requires canvas)
just icons-browser      # Open browser icon generator

# Project Info
just info               # Show project information
just status             # Check server status

📱 Mobile Experience

GlitchCraft is designed mobile-first with:

  • Touch-optimized controls with larger touch targets
  • Responsive layout that adapts from 320px to 4K
  • iOS zoom prevention with proper font sizes
  • Haptic feedback for copy actions (where supported)
  • Full-screen support when installed as PWA
  • Offline functionality via service worker

Mobile Features

  • Tap output text to copy instantly
  • Swipe-friendly interface
  • Portrait and landscape support
  • Works great on tablets

🔧 Technical Details

Architecture

  • Pure JavaScript - No frameworks, maximum performance
  • Service Worker - Full offline support with cache-first strategy
  • Progressive Enhancement - Works without JavaScript
  • Accessible - Screen reader compatible, keyboard navigation

Zalgo Algorithm

The corruption engine uses Unicode combining diacritical marks from three categories:

  • Above (U+0300-U+036F): Accents and marks above characters
  • Middle (U+0315-U+0489): Overlaying marks
  • Below (U+0316-U+0359): Marks below characters

Each mode strategically applies different combinations for unique effects.

Browser Support

  • Chrome/Chromium 88+
  • Firefox 85+
  • Safari 14+
  • Edge 88+
  • Mobile browsers (iOS Safari, Chrome Mobile)

🥚 Hidden Easter Eggs

GlitchCraft contains several hidden easter eggs for the curious:

🌩️ "He Comes" Mode

  • Trigger: Type he comes or zalgo
  • Effect: Auto-switches to Heavy Corruption with max intensity + red flash
  • Reference: Original zalgo creepypasta

🔍 404 Text Not Found

  • Trigger: Type 404
  • Effect: Shows "T̷̢̧e̴̢̧x̷̰t̸̨̧ ̷̢̧n̴̢̧o̷̰t̸̨̧ ̷̢̧f̴̢̧o̷̰ų̸̧n̷̢̧d̴̢̧"
  • Bonus: Copy notification says "Error copied successfully!"

💊 Matrix Mode

  • Red Pill: Type red pill → Heavy corruption + red tint + "Welcome to the real world"
  • Blue Pill: Type blue pill → Calm mode + blue tint + "You chose... wisely"
  • Reference: The Matrix (1999)

👨‍💻 Developer Credits

  • Trigger: Type credits OR click the title 10 times rapidly
  • Effect: Shows corrupted developer credits

🌙 Witching Hour (3:33 AM)

  • Trigger: Use the app at exactly 3:33 AM (any timezone)
  • Effect: Dark theme + screen shake + subtitle becomes "T̷̢̧h̴̢̧ḛ̷ ̸̨̧w̷̢̧i̴̢̧t̷̰c̸̨̧h̷̢̧i̴̢̧n̷̰g̸̨̧ ̷̢̧h̴̢̧o̷̰ų̸̧r̷̢̧"
  • Duration: Lasts for 1 minute

📱 Mobile Shake

  • Trigger: Shake your phone/device
  • Effect: Random corruption mode + intensity + haptic feedback
  • Message: "S̷̢̧h̴̢̧a̷̰k̸̨̧e̷̢̧n̴̢̧,̷̰ ̸̨̧n̷̢̧o̴̢̧t̷̰ ̸̨̧s̷̢̧t̴̢̧ḭ̷r̸̨̧r̷̢̧e̴̢̧d̷̰"
  • Note: Requires device motion permissions on iOS

🎨 Examples

Here are some z̴̳̈a̸̭̾l̵̰̔g̶̱̈ó̴̬ ̷̲̎t̸̰̄e̶̮̾x̷̲̄ẗ̴̰ examples:

Normal Text → Corrupted

Hello World → H̸̖̄e̶̮̾l̵̰̔ḻ̶̈ó̴̬ ̷̲̎W̸̰̄ö̶̮̾r̵̰̔ḻ̶̈d̴̬̈

Welcome to GlitchCraft → Ẁ̴̛̪̞̯̔́ͅe̷̮̮̗̣̎l̴̹̩̔c̸̘̩̀ö̴̝̮̀m̵̲̎ë̸̘̩ ̶̰̔t̷̳̎ő̶̰ ̴̨̾G̴̮̀l̸̘̀i̵̲t̴̖̆c̵̰h̴̘Č̶̮r̴̮̀a̵̲f̴̰t̸̮̆

The quick brown fox → T̷̨̄h̶̨̍ë̴́ ̵̌q̷̇ű̴i̸̇c̸̈ǩ̶ ̴̈b̵̄ř̷ö̴́ẇ̸n̶̈ ̴̌f̷̄ö̴́ẋ̸

Heavy Corruption Mode

CHAOS → C̸̨̧̬̘̤̖̱̗̘̄̀́̌̈́̀̇̚Ḧ̷̢̧̰̲̫̲̝̹́̔̃̀̈́̇̚Ä̴̢̧̰̲̫̲̝̹́̔̃̀̈́̇̚Ö̷̰́̓̒̚S̷̰̔̈́

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Run just check-all to ensure quality
  5. Submit a pull request

📄 License

MIT License - Feel free to use this for your own projects!

🎭 Fun Facts

  • The name "zalgo" comes from a creepypasta character
  • Unicode combining characters were designed for legitimate text rendering
  • GlitchCraft generates infinite unique corruptions
  • The glitch animations are pure CSS - no JavaScript!
  • Works offline once loaded (thanks to service worker)

Made with ❤️ and ḉ̴̨̧̰̲̫̲̝̹̈́̔̃̀̈́̇̚h̷̰̔̈́ä̸̰́̌ō̶̰̔̈́s̷̰̔̈́

Transform your text, embrace the glitch, spread the chaos!