Add favicon, OG image, and clean up deployment config

- Add SVG favicon and Apple touch icon (neon lightning bolt)
- Add AI-generated OG image for social sharing
- Add Twitter card and OpenGraph image metadata to layout
- Remove unnecessary Let's Encrypt Traefik labels (Cloudflare handles SSL)
- Remove dead footer links (Blog, Press Kit, Privacy, Terms, Cookies)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Jeff Emmett 2026-02-16 16:46:58 -07:00
parent da0a534c83
commit ca63536783
6 changed files with 25 additions and 14 deletions

View File

@ -21,6 +21,12 @@ export const metadata: Metadata = {
"sustainable festivals",
"poop power",
],
icons: {
icon: [
{ url: "/favicon.svg", type: "image/svg+xml" },
],
apple: "/apple-touch-icon.jpg",
},
openGraph: {
title: "PortaPower — Turning Festival Waste Into Festival Watts",
description:
@ -28,6 +34,21 @@ export const metadata: Metadata = {
url: "https://portapower.buzz",
siteName: "PortaPower",
type: "website",
images: [
{
url: "https://portapower.buzz/og-image.jpg",
width: 1024,
height: 576,
alt: "PortaPower - Neon green lightning bolt on dark background",
},
],
},
twitter: {
card: "summary_large_image",
title: "PortaPower — Turning Festival Waste Into Festival Watts",
description:
"Festival porta potties that generate clean electricity through bioreactor technology.",
images: ["https://portapower.buzz/og-image.jpg"],
},
};

View File

@ -15,16 +15,6 @@ const footerLinks = [
links: [
{ label: "FAQ", href: "#faq" },
{ label: "Our Impact", href: "#impact" },
{ label: "Blog", href: "#" },
{ label: "Press Kit", href: "#" },
],
},
{
title: "Legal",
links: [
{ label: "Privacy Policy", href: "#" },
{ label: "Terms of Service", href: "#" },
{ label: "Cookie Policy", href: "#" },
],
},
];

View File

@ -28,10 +28,6 @@ services:
- "traefik.http.routers.portapower.rule=Host(`portapower.buzz`) || Host(`www.portapower.buzz`)"
- "traefik.http.routers.portapower.entrypoints=web"
- "traefik.http.services.portapower.loadbalancer.server.port=80"
- "traefik.http.routers.portapower-secure.rule=Host(`portapower.buzz`) || Host(`www.portapower.buzz`)"
- "traefik.http.routers.portapower-secure.entrypoints=websecure"
- "traefik.http.routers.portapower-secure.tls=true"
- "traefik.http.routers.portapower-secure.service=portapower"
- "traefik.docker.network=traefik-public"
networks:

BIN
public/apple-touch-icon.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

4
public/favicon.svg Normal file
View File

@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
<rect width="32" height="32" rx="6" fill="#1A0E0A"/>
<path d="M18.5 4L10 18h5.5L13 28l10-14h-6z" fill="#39FF14"/>
</svg>

After

Width:  |  Height:  |  Size: 186 B

BIN
public/og-image.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB