diff --git a/app/favicon.ico b/app/favicon.ico deleted file mode 100644 index 718d6fe..0000000 Binary files a/app/favicon.ico and /dev/null differ diff --git a/app/layout.tsx b/app/layout.tsx index 501236a..12690ec 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -4,6 +4,7 @@ import type { ReactNode } from "react"; import { AuthModalProvider } from "./contexts/AuthModalContext"; import { MessagesProvider } from "./contexts/MessagesContext"; import messages from "../messages/en/index"; +import { ASSETS, getAssetPath } from "../lib/assetUtils"; import "./globals.css"; import ConditionalNavigation from "./components/navigation/ConditionalNavigation"; @@ -58,7 +59,7 @@ export const metadata: Metadata = { }, metadataBase: new URL("https://communityrule.com"), icons: { - icon: [{ url: "/favicon.ico", sizes: "16x16", type: "image/x-icon" }], + icon: [{ url: getAssetPath(ASSETS.LOGO), type: "image/svg+xml" }], }, alternates: { canonical: "/", diff --git a/docs/guides/static-assets.md b/docs/guides/static-assets.md index e91e102..fd00f0f 100644 --- a/docs/guides/static-assets.md +++ b/docs/guides/static-assets.md @@ -31,6 +31,10 @@ public/ `/assets/...` strings in components. - **Blog art** stays under `public/content/blog/` with `{slug}-vertical.svg`, `-horizontal.svg`, `-section.svg`, `-tag.svg`. +- **Favicon** reuses `assets/logos/community-rule.svg` (`ASSETS.LOGO` in + `app/layout.tsx` metadata). Do not place `favicon.ico` or other static + binaries under `app/` — keep `app/` for routes, layouts, and styles only + (`globals.css`, `tailwind.css`). ## PNG files and `.gitignore` @@ -49,6 +53,7 @@ stage. Raster → SVG conversion is tracked in | `marketing/avatar-*.svg` (×3) | Avatar / ASSETS | **Done** — SVG | | `marketing/hero-image.png` | HeroBanner | **Design review** — likely keep raster | | `marketing/governance-booklet.pdf` | About / Book | **Done** — PDF (`governanceBookletPath()`) | +| `logos/community-rule.svg` | Logo + favicon (`ASSETS.LOGO`) | **Done** — SVG | | `logos/gitlab.svg` | Footer / social | **Done** — SVG | ## Related docs