diff --git a/apps/ui/static/apple-touch-icon-114x114.png b/apps/ui/static/apple-touch-icon-114x114.png index 2bcbeea..3c8b92c 100644 Binary files a/apps/ui/static/apple-touch-icon-114x114.png and b/apps/ui/static/apple-touch-icon-114x114.png differ diff --git a/apps/ui/static/apple-touch-icon-120x120.png b/apps/ui/static/apple-touch-icon-120x120.png index 160c1e2..0daa24f 100644 Binary files a/apps/ui/static/apple-touch-icon-120x120.png and b/apps/ui/static/apple-touch-icon-120x120.png differ diff --git a/apps/ui/static/apple-touch-icon-144x144.png b/apps/ui/static/apple-touch-icon-144x144.png index 1f60cc9..7122052 100644 Binary files a/apps/ui/static/apple-touch-icon-144x144.png and b/apps/ui/static/apple-touch-icon-144x144.png differ diff --git a/apps/ui/static/apple-touch-icon-152x152.png b/apps/ui/static/apple-touch-icon-152x152.png index 9ae3461..2b91cf0 100644 Binary files a/apps/ui/static/apple-touch-icon-152x152.png and b/apps/ui/static/apple-touch-icon-152x152.png differ diff --git a/apps/ui/static/apple-touch-icon-16x16.png b/apps/ui/static/apple-touch-icon-16x16.png index 789990a..d4b26e6 100644 Binary files a/apps/ui/static/apple-touch-icon-16x16.png and b/apps/ui/static/apple-touch-icon-16x16.png differ diff --git a/apps/ui/static/apple-touch-icon-180x180.png b/apps/ui/static/apple-touch-icon-180x180.png index 33d0491..5f88fd8 100644 Binary files a/apps/ui/static/apple-touch-icon-180x180.png and b/apps/ui/static/apple-touch-icon-180x180.png differ diff --git a/apps/ui/static/apple-touch-icon-32x32.png b/apps/ui/static/apple-touch-icon-32x32.png index 559c86a..8b52e76 100644 Binary files a/apps/ui/static/apple-touch-icon-32x32.png and b/apps/ui/static/apple-touch-icon-32x32.png differ diff --git a/apps/ui/static/apple-touch-icon-57x57.png b/apps/ui/static/apple-touch-icon-57x57.png index 56981ab..394b54f 100644 Binary files a/apps/ui/static/apple-touch-icon-57x57.png and b/apps/ui/static/apple-touch-icon-57x57.png differ diff --git a/apps/ui/static/apple-touch-icon-60x60.png b/apps/ui/static/apple-touch-icon-60x60.png index 48d5967..9bf99e4 100644 Binary files a/apps/ui/static/apple-touch-icon-60x60.png and b/apps/ui/static/apple-touch-icon-60x60.png differ diff --git a/apps/ui/static/apple-touch-icon-72x72.png b/apps/ui/static/apple-touch-icon-72x72.png index 144b260..b7e4855 100644 Binary files a/apps/ui/static/apple-touch-icon-72x72.png and b/apps/ui/static/apple-touch-icon-72x72.png differ diff --git a/apps/ui/static/apple-touch-icon-76x76.png b/apps/ui/static/apple-touch-icon-76x76.png index 36a3503..f3bb893 100644 Binary files a/apps/ui/static/apple-touch-icon-76x76.png and b/apps/ui/static/apple-touch-icon-76x76.png differ diff --git a/apps/ui/static/apple-touch-icon.png b/apps/ui/static/apple-touch-icon.png index e088927..5f88fd8 100644 Binary files a/apps/ui/static/apple-touch-icon.png and b/apps/ui/static/apple-touch-icon.png differ diff --git a/apps/ui/static/garage-icon-114x114.png b/apps/ui/static/garage-icon-114x114.png index 40382fc..629ef89 100644 Binary files a/apps/ui/static/garage-icon-114x114.png and b/apps/ui/static/garage-icon-114x114.png differ diff --git a/apps/ui/static/garage-icon-120x120.png b/apps/ui/static/garage-icon-120x120.png index 751ced3..8e478b4 100644 Binary files a/apps/ui/static/garage-icon-120x120.png and b/apps/ui/static/garage-icon-120x120.png differ diff --git a/apps/ui/static/garage-icon-144x144.png b/apps/ui/static/garage-icon-144x144.png index 58b8f5d..783a394 100644 Binary files a/apps/ui/static/garage-icon-144x144.png and b/apps/ui/static/garage-icon-144x144.png differ diff --git a/apps/ui/static/garage-icon-152x152.png b/apps/ui/static/garage-icon-152x152.png index ffd5392..72bc9cc 100644 Binary files a/apps/ui/static/garage-icon-152x152.png and b/apps/ui/static/garage-icon-152x152.png differ diff --git a/apps/ui/static/garage-icon-16x16.png b/apps/ui/static/garage-icon-16x16.png index 77d4abb..005d915 100644 Binary files a/apps/ui/static/garage-icon-16x16.png and b/apps/ui/static/garage-icon-16x16.png differ diff --git a/apps/ui/static/garage-icon-180x180.png b/apps/ui/static/garage-icon-180x180.png index f2271b7..7020e6d 100644 Binary files a/apps/ui/static/garage-icon-180x180.png and b/apps/ui/static/garage-icon-180x180.png differ diff --git a/apps/ui/static/garage-icon-32x32.png b/apps/ui/static/garage-icon-32x32.png index 9a08e61..0992956 100644 Binary files a/apps/ui/static/garage-icon-32x32.png and b/apps/ui/static/garage-icon-32x32.png differ diff --git a/apps/ui/static/garage-icon-57x57.png b/apps/ui/static/garage-icon-57x57.png index 9d55312..8936b15 100644 Binary files a/apps/ui/static/garage-icon-57x57.png and b/apps/ui/static/garage-icon-57x57.png differ diff --git a/apps/ui/static/garage-icon-60x60.png b/apps/ui/static/garage-icon-60x60.png index 6641b2b..c293c78 100644 Binary files a/apps/ui/static/garage-icon-60x60.png and b/apps/ui/static/garage-icon-60x60.png differ diff --git a/apps/ui/static/garage-icon-72x72.png b/apps/ui/static/garage-icon-72x72.png index e994824..91fb3bd 100644 Binary files a/apps/ui/static/garage-icon-72x72.png and b/apps/ui/static/garage-icon-72x72.png differ diff --git a/apps/ui/static/garage-icon-76x76.png b/apps/ui/static/garage-icon-76x76.png index f4dd78f..bfc2750 100644 Binary files a/apps/ui/static/garage-icon-76x76.png and b/apps/ui/static/garage-icon-76x76.png differ diff --git a/apps/ui/static/garage-icon.png b/apps/ui/static/garage-icon.png index feab56b..7020e6d 100644 Binary files a/apps/ui/static/garage-icon.png and b/apps/ui/static/garage-icon.png differ diff --git a/create_proper_icons.py b/create_proper_icons.py new file mode 100644 index 0000000..65a338e --- /dev/null +++ b/create_proper_icons.py @@ -0,0 +1,118 @@ +""" +Script to create proper PNG icons with house and car symbols +""" + +import os +from pathlib import Path +from PIL import Image, ImageDraw, ImageFont + +def create_proper_icons(): + static_dir = Path("/Users/wn/Workspace/home-automation/apps/ui/static") + + # Create home icon with house symbol + def create_home_icon(size): + img = Image.new('RGBA', (size, size), color=(102, 126, 234, 255)) # #667EEA + draw = ImageDraw.Draw(img) + + # Calculate proportions + margin = size // 10 + house_size = size - 2 * margin + + # Draw house shape + # Base rectangle + base_height = house_size // 2 + base_y = size - margin - base_height + draw.rectangle([margin, base_y, size - margin, size - margin], fill='white') + + # Roof triangle + roof_height = house_size // 3 + roof_points = [ + (size // 2, margin), # top point + (margin, base_y), # bottom left + (size - margin, base_y) # bottom right + ] + draw.polygon(roof_points, fill='white') + + # Door + door_width = house_size // 6 + door_height = base_height // 2 + door_x = size // 2 - door_width // 2 + door_y = size - margin - door_height + draw.rectangle([door_x, door_y, door_x + door_width, size - margin], fill=(102, 126, 234, 255)) + + # Window + window_size = house_size // 8 + window_x = margin + house_size // 4 + window_y = base_y + base_height // 4 + draw.rectangle([window_x, window_y, window_x + window_size, window_y + window_size], fill=(102, 126, 234, 255)) + + return img + + # Create car icon with car symbol + def create_car_icon(size): + img = Image.new('RGBA', (size, size), color=(102, 126, 234, 255)) # #667EEA + draw = ImageDraw.Draw(img) + + # Calculate proportions + margin = size // 8 + car_width = size - 2 * margin + car_height = car_width // 2 + car_y = size // 2 - car_height // 2 + + # Draw car body + draw.rounded_rectangle([margin, car_y, size - margin, car_y + car_height], + radius=size//20, fill='white') + + # Draw car roof + roof_margin = car_width // 4 + roof_height = car_height // 2 + roof_y = car_y - roof_height // 2 + draw.rounded_rectangle([margin + roof_margin, roof_y, + size - margin - roof_margin, car_y + roof_height // 2], + radius=size//30, fill='white') + + # Draw wheels + wheel_radius = car_height // 4 + wheel_y = car_y + car_height - wheel_radius // 2 + + # Left wheel + left_wheel_x = margin + car_width // 4 + draw.ellipse([left_wheel_x - wheel_radius, wheel_y - wheel_radius, + left_wheel_x + wheel_radius, wheel_y + wheel_radius], + fill=(102, 126, 234, 255)) + + # Right wheel + right_wheel_x = size - margin - car_width // 4 + draw.ellipse([right_wheel_x - wheel_radius, wheel_y - wheel_radius, + right_wheel_x + wheel_radius, wheel_y + wheel_radius], + fill=(102, 126, 234, 255)) + + return img + + # Sizes to create + sizes = [16, 32, 57, 60, 72, 76, 114, 120, 144, 152, 180] + + # Create home icons + for size in sizes: + home_icon = create_home_icon(size) + home_icon.save(static_dir / f"apple-touch-icon-{size}x{size}.png") + print(f"Created apple-touch-icon-{size}x{size}.png") + + # Also create the main apple-touch-icon.png + main_icon = create_home_icon(180) + main_icon.save(static_dir / "apple-touch-icon.png") + print("Created apple-touch-icon.png") + + # Create garage icons + for size in sizes: + car_icon = create_car_icon(size) + car_icon.save(static_dir / f"garage-icon-{size}x{size}.png") + print(f"Created garage-icon-{size}x{size}.png") + + # Also create the main garage-icon.png + main_garage = create_car_icon(180) + main_garage.save(static_dir / "garage-icon.png") + print("Created garage-icon.png") + +if __name__ == "__main__": + create_proper_icons() \ No newline at end of file diff --git a/icon-test.html b/icon-test.html new file mode 100644 index 0000000..d73a971 --- /dev/null +++ b/icon-test.html @@ -0,0 +1,77 @@ + + + + + + Icon Test + + + +

Apple Touch Icon Test

+ +
+
+

Home Icon

+ Home Icon +

Haupticon für die Home Automation App

+
+ Home 76px + Home 60px + Home 32px +
+
+ +
+

Garage Icon

+ Garage Icon +

Icon für die Garage-Seite

+
+ Garage 76px + Garage 60px + Garage 32px +
+
+
+ +

iPhone Homescreen Test

+

Um die Icons auf dem iPhone zu testen:

+
    +
  1. Öffnen Sie Ihre Home Automation App im Safari
  2. +
  3. Tippen Sie auf das Teilen-Symbol
  4. +
  5. Wählen Sie "Zum Home-Bildschirm hinzufügen"
  6. +
  7. Das Icon sollte jetzt als Haus-Symbol erscheinen
  8. +
+ +

Hinweis: Falls das alte Icon noch angezeigt wird, löschen Sie die bestehende App vom Homescreen und fügen Sie sie neu hinzu.

+ + \ No newline at end of file