feat: paper-grain favicon + PWA icons in modern blue
All checks were successful
Build & Deploy / build-and-deploy (push) Successful in 39s

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
ordinarthur 2026-04-20 12:18:02 +02:00
parent dbd500b0b5
commit bdfa11a2bf
7 changed files with 35 additions and 7 deletions

View File

@ -6,6 +6,8 @@
<meta name="description" content="AnyDrop — Instant, peer-to-peer file and text transfer, universal across platforms." />
<meta name="theme-color" content="#F5F0E6" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<link rel="icon" type="image/png" sizes="192x192" href="/icon-192.png" />
<link rel="apple-touch-icon" href="/apple-touch-icon.png" />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<title>AnyDrop — Universal transfer</title>

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

View File

@ -1,5 +1,25 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
<rect width="100" height="100" rx="20" fill="#6366f1"/>
<path d="M50 20 L50 60 M35 45 L50 60 L65 45" stroke="white" stroke-width="8" stroke-linecap="round" stroke-linejoin="round" fill="none"/>
<line x1="25" y1="75" x2="75" y2="75" stroke="white" stroke-width="8" stroke-linecap="round"/>
<svg width="512" height="512" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg">
<defs>
<filter id="grain" x="0" y="0" width="100%" height="100%">
<feTurbulence type="fractalNoise" baseFrequency="0.9" numOctaves="2" seed="7"/>
<feColorMatrix values="0 0 0 0 0.06
0 0 0 0 0.05
0 0 0 0 0.03
0 0 0 0.18 0"/>
<feComposite in2="SourceGraphic" operator="in"/>
</filter>
<clipPath id="clip">
<rect width="512" height="512" rx="96"/>
</clipPath>
</defs>
<g clip-path="url(#clip)">
<rect width="512" height="512" fill="#F5F0E6"/>
<rect width="512" height="512" filter="url(#grain)"/>
<rect x="5" y="5" width="502" height="502" rx="92" fill="none" stroke="#DCD3BE" stroke-width="2"/>
<rect x="80" y="144" width="352" height="240" rx="8" fill="none" stroke="#1D4ED8" stroke-width="16" stroke-linejoin="round"/>
<line x1="128" y1="208" x2="288" y2="208" stroke="#1D4ED8" stroke-width="12" stroke-linecap="round"/>
<line x1="128" y1="252" x2="360" y2="252" stroke="#1D4ED8" stroke-width="12" stroke-linecap="round"/>
<line x1="128" y1="296" x2="240" y2="296" stroke="#1D4ED8" stroke-width="12" stroke-linecap="round"/>
<circle cx="376" cy="320" r="20" fill="#1D4ED8"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 365 B

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
web/public/icon-192.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

BIN
web/public/icon-512.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 212 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 224 KiB

View File

@ -17,7 +17,7 @@ export default defineConfig({
srcDir: "src",
filename: "sw.ts",
registerType: "autoUpdate",
includeAssets: ["favicon.svg"],
includeAssets: ["favicon.svg", "apple-touch-icon.png"],
injectManifest: {
globPatterns: ["**/*.{js,css,html,ico,png,svg,woff2}"],
},
@ -25,8 +25,8 @@ export default defineConfig({
name: "AnyDrop",
short_name: "AnyDrop",
description: "Partage de fichiers instantané, peer-to-peer, sans compte",
theme_color: "#6366f1",
background_color: "#0f172a",
theme_color: "#F5F0E6",
background_color: "#F5F0E6",
display: "standalone",
start_url: "/",
icons: [
@ -40,6 +40,12 @@ export default defineConfig({
sizes: "512x512",
type: "image/png",
},
{
src: "/icon-maskable-512.png",
sizes: "512x512",
type: "image/png",
purpose: "maskable",
},
],
share_target: {
action: "/share",