fix: serve the missing Fleet Ops favicon

There was no favicon at all -- index.html never linked one, and the
frontend Dockerfile's build stage never copied the public/ directory
into the build context, so even after adding public/favicon.svg
locally, the containerized build silently dropped it (nginx fell back
to serving index.html for that path). Fixed both: index.html links
/favicon.svg, and the Dockerfile now copies public/ alongside src/.
The favicon reuses the existing BrandMark glyph (petrol background,
teal accent) for visual consistency with the in-app brand mark.
A regression test for this lives in the earlier translation-fix commit
(frontend/e2e/fleet-ops-correction.spec.ts), added together with the
fix at the time.
This commit is contained in:
NuklearRabbit
2026-08-04 03:10:11 +02:00
parent 77208b857a
commit f0d641198c
3 changed files with 7 additions and 0 deletions
+1
View File
@@ -1,6 +1,7 @@
FROM node:22-alpine AS build FROM node:22-alpine AS build
WORKDIR /app WORKDIR /app
COPY package.json package-lock.json tsconfig.json vite.config.ts index.html ./ COPY package.json package-lock.json tsconfig.json vite.config.ts index.html ./
COPY public ./public
COPY src ./src COPY src ./src
RUN npm ci && npm run build RUN npm ci && npm run build
+1
View File
@@ -4,6 +4,7 @@
<meta charset="UTF-8" /> <meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="description" content="Fleet Ops synthetic-data operations demo" /> <meta name="description" content="Fleet Ops synthetic-data operations demo" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<title>Fleet Ops</title> <title>Fleet Ops</title>
</head> </head>
<body> <body>
+5
View File
@@ -0,0 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
<rect width="32" height="32" rx="7" fill="#0f172a" />
<path d="M5 23V8l7.1 8L19 8h8v15h-5V14l-9.9 11L10 22.6V23H5Z" fill="white" />
<path d="M3 15.5h26" stroke="#2dd4bf" stroke-width="2.5" />
</svg>

After

Width:  |  Height:  |  Size: 266 B