diff --git a/CLAUDE.md b/CLAUDE.md
index db77d13..0e5bbf0 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -4,7 +4,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
## Project Overview
-Text Corruptor is a Progressive Web App (PWA) that generates zalgo text (corrupted/glitched text using Unicode combining characters). The app features real-time text corruption with adjustable intensity and click-to-copy functionality.
+GlitchCraft is a Progressive Web App (PWA) that generates zalgo text (corrupted/glitched text using Unicode combining characters). The app features real-time text corruption with adjustable intensity and click-to-copy functionality.
## Project Structure
@@ -31,7 +31,7 @@ zalgo/
### Running the Application
```bash
-# Start development server (serves on http://localhost:8000/)
+# Start development server (serves on http://localhost:8000/ and [::]:8000)
python3 server.py
# Or using the npm script
diff --git a/app/app.js b/app/app.js
index 14d3930..d151350 100644
--- a/app/app.js
+++ b/app/app.js
@@ -1,5 +1,5 @@
/**
- * Main application logic for Text Corruptor
+ * Main application logic for GlitchCraft
* Handles UI interactions and PWA registration
*/
diff --git a/app/generate-icons.html b/app/generate-icons.html
index 0954490..620fe87 100644
--- a/app/generate-icons.html
+++ b/app/generate-icons.html
@@ -5,7 +5,7 @@
Generate PWA Icons
-
Icon Generator for Text Corruptor
+
Icon Generator for GlitchCraft
Right-click each canvas and save as PNG to the icons folder
diff --git a/app/index.html b/app/index.html
index a35af67..a32fd12 100644
--- a/app/index.html
+++ b/app/index.html
@@ -8,7 +8,7 @@
content="Transform your text into corrupted zalgo text with one click. Perfect for creating glitchy, distorted text effects."
/>
- Text Corruptor - Zalgo Text Generator
+ GlitchCraft - Artisanal Text Corruption
@@ -18,8 +18,8 @@
-
Text Corruptor
-
Transform your text into corrupted chaos
+
GlitchCraft
+
Artisanal text corruption, served fresh!
diff --git a/app/manifest.json b/app/manifest.json
index b0794fb..ab4102c 100644
--- a/app/manifest.json
+++ b/app/manifest.json
@@ -1,7 +1,7 @@
{
- "name": "Text Corruptor - Zalgo Text Generator",
- "short_name": "Text Corruptor",
- "description": "Transform your text into corrupted zalgo text with adjustable intensity",
+ "name": "GlitchCraft - Artisanal Text Corruption",
+ "short_name": "GlitchCraft",
+ "description": "Artisanal text corruption, served fresh! Create beautifully chaotic zalgo text with adjustable intensity",
"start_url": "/",
"display": "standalone",
"background_color": "#0f0f14",
diff --git a/app/sw.js b/app/sw.js
index 8395370..26e0ca2 100644
--- a/app/sw.js
+++ b/app/sw.js
@@ -1,9 +1,9 @@
/**
- * Service Worker for Text Corruptor PWA
+ * Service Worker for GlitchCraft PWA
* Enables offline functionality and caching
*/
-const CACHE_NAME = 'text-corruptor-v1';
+const CACHE_NAME = 'glitchcraft-v1';
const urlsToCache = ['/', '/index.html', '/styles.css', '/zalgo.js', '/app.js', '/manifest.json'];
// Install event - cache essential files
diff --git a/server.py b/server.py
index 8cdbcd6..c61a8e7 100644
--- a/server.py
+++ b/server.py
@@ -1,12 +1,13 @@
#!/usr/bin/env python3
"""
-Simple HTTP server for testing the Text Corruptor PWA
+Simple HTTP server for testing the GlitchCraft PWA
Run with: python3 server.py
Then open http://localhost:8000/ in your browser
"""
import http.server
import socketserver
+import socket
import os
PORT = 8000
@@ -14,8 +15,21 @@ PORT = 8000
DIRECTORY = os.path.join(os.path.dirname(os.path.abspath(__file__)), "app")
+class DualStackServer(socketserver.TCPServer):
+ """TCP server that supports both IPv4 and IPv6."""
+
+ address_family = socket.AF_INET6
+
+ def __init__(self, *args, **kwargs):
+ # Disable dual stack to make it work on all systems
+ # Some systems have it enabled by default, some don't
+ super().__init__(*args, **kwargs)
+ # Enable dual stack - listen on both IPv4 and IPv6
+ self.socket.setsockopt(socket.IPPROTO_IPV6, socket.IPV6_V6ONLY, 0)
+
+
class MyHTTPRequestHandler(http.server.SimpleHTTPRequestHandler):
- """Custom HTTP request handler for serving the Text Corruptor PWA."""
+ """Custom HTTP request handler for serving the GlitchCraft PWA."""
def __init__(self, *args, **kwargs):
super().__init__(*args, directory=DIRECTORY, **kwargs)
@@ -29,8 +43,16 @@ class MyHTTPRequestHandler(http.server.SimpleHTTPRequestHandler):
if __name__ == "__main__":
- with socketserver.TCPServer(("", PORT), MyHTTPRequestHandler) as httpd:
- print(f"Server running at http://localhost:{PORT}/")
+ # Listen on all interfaces (:: for IPv6, which also handles IPv4 with dual stack)
+ HOST = "::" # Listen on all interfaces (IPv6 and IPv4)
+
+ with DualStackServer((HOST, PORT), MyHTTPRequestHandler) as httpd:
+ print(f"Server running on all interfaces at port {PORT}")
+ print(f"Access at:")
+ print(f" http://localhost:{PORT}/")
+ print(f" http://127.0.0.1:{PORT}/ (IPv4)")
+ print(f" http://[::1]:{PORT}/ (IPv6)")
+ print(f" http://:{PORT}/")
print(f"Serving files from: {DIRECTORY}")
print("Press Ctrl+C to stop the server")
try: