From e1f9ae770dba3841eaae9206924f70ab1912ff67 Mon Sep 17 00:00:00 2001 From: technical-writer Date: Tue, 2 Jun 2026 15:02:24 -0700 Subject: [PATCH] docs(site): add favicon / app icon (was 404) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The docs site (doc.moleculesai.app) served no favicon — /favicon.ico, /icon.svg, /icon.png all 404'd, so browser tabs/bookmarks showed a blank/default icon. Added app/icon.svg (Next.js app-router convention → auto-generates the favicon + ) using the same theme-aware molecule mark that moleculesai.app already serves as its favicon (docs/assets/branding/molecule-icon.svg), so the docs tab icon matches the marketing site. Added a 180px app/apple-icon.png too. Not a new brand decision — matches the existing marketing-site favicon; will follow if/when the brand marks are unified. Build green; /icon.svg + /apple-icon.png routes + link tags emitted. Co-Authored-By: Claude Opus 4.8 (1M context) --- app/apple-icon.png | Bin 0 -> 6715 bytes app/icon.svg | 28 ++++++++++++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 app/apple-icon.png create mode 100644 app/icon.svg diff --git a/app/apple-icon.png b/app/apple-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..26d941ec9dfe382e399dea1b466c99720e2054b6 GIT binary patch literal 6715 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 literal 0 HcmV?d00001 diff --git a/app/icon.svg b/app/icon.svg new file mode 100644 index 0000000..b6a7814 --- /dev/null +++ b/app/icon.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + -- 2.52.0