Enhance mobile experience and add zalgo text variants

Mobile improvements:
- Comprehensive responsive design for 320px-4K screens
- Touch-optimized controls with larger touch targets
- iOS zoom prevention with 16px font sizes on inputs
- Swipe-friendly interface with better spacing
- Portrait and landscape orientation support
- Enhanced accessibility with better contrast and sizes

Zalgo variants implemented:
- Full Chaos: Balanced corruption (default)
- Above Only: Marks above characters only
- Below Only: Marks below characters only
- Middle Only: Overlaying marks
- Mini Glitch: Subtle corruption
- Heavy Corruption: Maximum chaos overload

UI enhancements:
- Added corruption mode selector dropdown
- Reorganized controls into responsive groups
- Improved mobile control layouts
- Better visual hierarchy and spacing

Code quality:
- Fixed ESLint/Prettier indentation conflict
- Enhanced ZalgoGenerator with mode parameter
- Added event handlers for mode selection
- Comprehensive mobile CSS with multiple breakpoints

Documentation:
- Created comprehensive README with zalgo examples
- Documented all corruption modes with examples
- Added development and deployment instructions

The app now provides a perfect mobile experience with
diverse zalgo corruption options for creative text effects.

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

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Ole-Morten Duesund 2025-08-18 20:30:05 +02:00
commit 7b0a3746d5
6 changed files with 377 additions and 23 deletions

View file

@ -24,9 +24,23 @@
<main>
<div class="controls">
<label for="intensity">Corruption Intensity:</label>
<input type="range" id="intensity" min="1" max="10" value="5" />
<span id="intensityValue">5</span>
<div class="control-group">
<label for="zalgoMode">Corruption Mode:</label>
<select id="zalgoMode">
<option value="full">Full Chaos</option>
<option value="above">Above Only</option>
<option value="below">Below Only</option>
<option value="middle">Middle Only</option>
<option value="mini">Mini Glitch</option>
<option value="heavy">Heavy Corruption</option>
</select>
</div>
<div class="control-group">
<label for="intensity">Intensity:</label>
<input type="range" id="intensity" min="1" max="10" value="5" />
<span id="intensityValue">5</span>
</div>
</div>
<div class="text-area-container">