feat: Implement TaskFlow logos and icons throughout the application
continuous-integration/drone/push Build is passing

- Add favicon files (16x16 to 256x256, .ico)
- Add PWA icons (128, 256, 512, 1024)
- Add apple-touch-icon for iOS
- Add transparent icons for loading screens
- Add horizontal logo with tagline for auth page
- Update HTML head with proper favicon links
- Update PWA manifest with correct icon references
- Update sidebar header with branded icon
- Update mobile header with branded icon
- Update auth/login pages with logo display
- Update loading state with branded splash screen
- Update 404 page with logo header
- Update email template to use proper logo URL
- Update service worker and push notifications to use correct icons
This commit is contained in:
Paul Nothaft
2026-01-19 21:40:09 +01:00
parent 4b51e9f05e
commit 88cd2a5c88
68 changed files with 72 additions and 32 deletions
+2 -5
View File
@@ -12,7 +12,7 @@ export function generateEmailHtml(language: string, content: {
: "This email was sent automatically. Please do not reply.";
const siteUrl = process.env.VITE_PUBLIC_APP_URL || "http://localhost:5001";
const logoUrl = `${siteUrl}/favicon.png`;
const logoUrl = `${siteUrl}/icon-256.png`;
return `
<!DOCTYPE html>
@@ -103,10 +103,7 @@ export function generateEmailHtml(language: string, content: {
<body>
<div class="container">
<div class="logo">
<!-- Trying to link to external URL for logo if accessible, otherwise alt text plays role -->
<img src="https://raw.githubusercontent.com/shadcn-ui/ui/main/apps/www/public/favicon.ico" alt="TaskFlow" style="border-radius: 8px;" width="48" height="48">
<!-- Ideally we host the logo. For localhost, external clients won't see localhost images. I'll use a placeholder or assume the user will configure a real URL in prod.
For now, I'll use a generic pleasing icon or text if image breaks, but let's try to pass the favicon. -->
<img src="${logoUrl}" alt="TaskFlow" style="border-radius: 12px;" width="56" height="56">
</div>
<div class="card">
<h1>${content.title}</h1>
+2 -2
View File
@@ -207,8 +207,8 @@ export async function sendPushNotification(
const notificationPayload = JSON.stringify({
title: payload.title,
body: payload.body,
icon: payload.icon || '/favicon.png',
badge: payload.badge || '/favicon.png',
icon: payload.icon || '/icon-256.png',
badge: payload.badge || '/icon-128.png',
tag: payload.tag || `taskflow-${Date.now()}`,
data: payload.data || {}
});