diff --git a/js/desktop/assets/flowy.ico b/js/desktop/assets/flowy.ico
index f097dba..1a24c13 100644
Binary files a/js/desktop/assets/flowy.ico and b/js/desktop/assets/flowy.ico differ
diff --git a/js/desktop/assets/icon-sources/README.md b/js/desktop/assets/icon-sources/README.md
new file mode 100644
index 0000000..30ee006
--- /dev/null
+++ b/js/desktop/assets/icon-sources/README.md
@@ -0,0 +1,42 @@
+# Icon sources
+
+These files are **not shipped** in the app. They are the masters used to
+regenerate the platform icon files that live one level up in `assets/`.
+
+## What ships (in `assets/`)
+
+| File | Platform | Used by | Shape |
+| ------------ | -------- | ----------------------------------------- | ------------ |
+| `flowy.ico` | Windows | `forge.config.ts` (`setupIcon` + app icon)| full-bleed |
+| `flowy.icns` | macOS | `forge.config.ts` (`icon: './assets/flowy'`) | rounded/padded |
+| `icon.png` | both | dev dock icon (`main.ts`) + in-app favicon | rounded/padded |
+
+`forge.config.ts` references the app icon as `./assets/flowy` (no extension);
+Electron Forge appends `.ico` on Windows and `.icns` on macOS, so those two
+files must keep the same `flowy` basename.
+
+## Why two different shapes
+
+- **Windows** draws icons edge-to-edge and adds no rounding, so its source is
+ **full-bleed** (`windows-fullbleed-1024.png`). A padded/rounded image renders
+ visibly smaller than neighboring app icons.
+- **macOS** expects the Apple icon grid: a rounded squircle with ~10% transparent
+ margin baked in (`macos.iconset/`). Full-bleed art looks oversized on the Dock.
+
+## Regenerating
+
+### Windows — `flowy.ico`
+From a full-bleed 1024×1024 PNG (`windows-fullbleed-1024.png`):
+
+```sh
+npx png-to-ico ./icon-sources/windows-fullbleed-1024.png > ./flowy.ico
+```
+
+Produces a multi-resolution `.ico` (16/32/48/256) — the sizes Windows actually uses.
+
+### macOS — `flowy.icns`
+From the `.iconset` folder (run on macOS):
+
+```sh
+iconutil -c icns ./icon-sources/macos.iconset -o ./flowy.icns
+```
diff --git a/js/desktop/assets/flowy.iconset/icon_128x128.png b/js/desktop/assets/icon-sources/macos.iconset/icon_128x128.png
similarity index 100%
rename from js/desktop/assets/flowy.iconset/icon_128x128.png
rename to js/desktop/assets/icon-sources/macos.iconset/icon_128x128.png
diff --git a/js/desktop/assets/flowy.iconset/icon_128x128@2x.png b/js/desktop/assets/icon-sources/macos.iconset/icon_128x128@2x.png
similarity index 100%
rename from js/desktop/assets/flowy.iconset/icon_128x128@2x.png
rename to js/desktop/assets/icon-sources/macos.iconset/icon_128x128@2x.png
diff --git a/js/desktop/assets/flowy.iconset/icon_16x16.png b/js/desktop/assets/icon-sources/macos.iconset/icon_16x16.png
similarity index 100%
rename from js/desktop/assets/flowy.iconset/icon_16x16.png
rename to js/desktop/assets/icon-sources/macos.iconset/icon_16x16.png
diff --git a/js/desktop/assets/flowy.iconset/icon_16x16@2x.png b/js/desktop/assets/icon-sources/macos.iconset/icon_16x16@2x.png
similarity index 100%
rename from js/desktop/assets/flowy.iconset/icon_16x16@2x.png
rename to js/desktop/assets/icon-sources/macos.iconset/icon_16x16@2x.png
diff --git a/js/desktop/assets/flowy.iconset/icon_256x256.png b/js/desktop/assets/icon-sources/macos.iconset/icon_256x256.png
similarity index 100%
rename from js/desktop/assets/flowy.iconset/icon_256x256.png
rename to js/desktop/assets/icon-sources/macos.iconset/icon_256x256.png
diff --git a/js/desktop/assets/flowy.iconset/icon_256x256@2x.png b/js/desktop/assets/icon-sources/macos.iconset/icon_256x256@2x.png
similarity index 100%
rename from js/desktop/assets/flowy.iconset/icon_256x256@2x.png
rename to js/desktop/assets/icon-sources/macos.iconset/icon_256x256@2x.png
diff --git a/js/desktop/assets/flowy.iconset/icon_32x32.png b/js/desktop/assets/icon-sources/macos.iconset/icon_32x32.png
similarity index 100%
rename from js/desktop/assets/flowy.iconset/icon_32x32.png
rename to js/desktop/assets/icon-sources/macos.iconset/icon_32x32.png
diff --git a/js/desktop/assets/flowy.iconset/icon_32x32@2x.png b/js/desktop/assets/icon-sources/macos.iconset/icon_32x32@2x.png
similarity index 100%
rename from js/desktop/assets/flowy.iconset/icon_32x32@2x.png
rename to js/desktop/assets/icon-sources/macos.iconset/icon_32x32@2x.png
diff --git a/js/desktop/assets/flowy.iconset/icon_512x512.png b/js/desktop/assets/icon-sources/macos.iconset/icon_512x512.png
similarity index 100%
rename from js/desktop/assets/flowy.iconset/icon_512x512.png
rename to js/desktop/assets/icon-sources/macos.iconset/icon_512x512.png
diff --git a/js/desktop/assets/icon-sources/windows-fullbleed-1024.png b/js/desktop/assets/icon-sources/windows-fullbleed-1024.png
new file mode 100644
index 0000000..b51e41c
Binary files /dev/null and b/js/desktop/assets/icon-sources/windows-fullbleed-1024.png differ
diff --git a/js/desktop/assets/icon_green.png b/js/desktop/assets/icon_green.png
deleted file mode 100644
index 009ff0c..0000000
Binary files a/js/desktop/assets/icon_green.png and /dev/null differ
diff --git a/js/desktop/assets/icon_red.png b/js/desktop/assets/icon_red.png
deleted file mode 100644
index da43505..0000000
Binary files a/js/desktop/assets/icon_red.png and /dev/null differ
diff --git a/js/desktop/assets/images/FLOWY-4.svg b/js/desktop/assets/images/FLOWY-4.svg
deleted file mode 100644
index 044b26e..0000000
--- a/js/desktop/assets/images/FLOWY-4.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
diff --git a/js/desktop/assets/sound.wav b/js/desktop/assets/sounds/beep.wav
similarity index 100%
rename from js/desktop/assets/sound.wav
rename to js/desktop/assets/sounds/beep.wav
diff --git a/js/desktop/src/hooks/use-stream-autoplay.ts b/js/desktop/src/hooks/use-stream-autoplay.ts
index 2026242..b57dd14 100644
--- a/js/desktop/src/hooks/use-stream-autoplay.ts
+++ b/js/desktop/src/hooks/use-stream-autoplay.ts
@@ -1,5 +1,5 @@
import { useEffect, useRef } from "react";
-import beepSound from "../../assets/sound.wav";
+import beepSound from "../../assets/sounds/beep.wav";
import type { Network, Particle, StreamProperties } from "@/api/types";
import { apiClient } from "@/api/client";
import { useAuthStore } from "@/stores/auth-store";
diff --git a/js/mobile/app.config.ts b/js/mobile/app.config.ts
index daa8413..92b5d6c 100644
--- a/js/mobile/app.config.ts
+++ b/js/mobile/app.config.ts
@@ -14,7 +14,7 @@ const config: ExpoConfig = {
splash: {
image: "./assets/icon.png",
resizeMode: "contain",
- backgroundColor: "#000000",
+ backgroundColor: "#2B2B2B",
},
ios: {
supportsTablet: true,
@@ -23,6 +23,12 @@ const config: ExpoConfig = {
ITSAppUsesNonExemptEncryption: false,
},
},
+ android: {
+ adaptiveIcon: {
+ foregroundImage: "./assets/icon.png",
+ backgroundColor: "#2B2B2B",
+ },
+ },
plugins: [
[
"expo-build-properties",
@@ -53,7 +59,7 @@ const config: ExpoConfig = {
[
"expo-notifications",
{
- icon: "./assets/icon.png",
+ icon: "./assets/notification-icon.png",
color: "#000000",
},
],
diff --git a/js/mobile/assets/flowy.icns b/js/mobile/assets/flowy.icns
deleted file mode 100644
index 310b5ef..0000000
Binary files a/js/mobile/assets/flowy.icns and /dev/null differ
diff --git a/js/mobile/assets/flowy.ico b/js/mobile/assets/flowy.ico
deleted file mode 100644
index f097dba..0000000
Binary files a/js/mobile/assets/flowy.ico and /dev/null differ
diff --git a/js/mobile/assets/flowy.iconset/icon_128x128.png b/js/mobile/assets/flowy.iconset/icon_128x128.png
deleted file mode 100644
index 48bed99..0000000
Binary files a/js/mobile/assets/flowy.iconset/icon_128x128.png and /dev/null differ
diff --git a/js/mobile/assets/flowy.iconset/icon_128x128@2x.png b/js/mobile/assets/flowy.iconset/icon_128x128@2x.png
deleted file mode 100644
index 4af3689..0000000
Binary files a/js/mobile/assets/flowy.iconset/icon_128x128@2x.png and /dev/null differ
diff --git a/js/mobile/assets/flowy.iconset/icon_16x16.png b/js/mobile/assets/flowy.iconset/icon_16x16.png
deleted file mode 100644
index a084a02..0000000
Binary files a/js/mobile/assets/flowy.iconset/icon_16x16.png and /dev/null differ
diff --git a/js/mobile/assets/flowy.iconset/icon_16x16@2x.png b/js/mobile/assets/flowy.iconset/icon_16x16@2x.png
deleted file mode 100644
index 67ed0d3..0000000
Binary files a/js/mobile/assets/flowy.iconset/icon_16x16@2x.png and /dev/null differ
diff --git a/js/mobile/assets/flowy.iconset/icon_256x256.png b/js/mobile/assets/flowy.iconset/icon_256x256.png
deleted file mode 100644
index 4af3689..0000000
Binary files a/js/mobile/assets/flowy.iconset/icon_256x256.png and /dev/null differ
diff --git a/js/mobile/assets/flowy.iconset/icon_256x256@2x.png b/js/mobile/assets/flowy.iconset/icon_256x256@2x.png
deleted file mode 100644
index 6b338f5..0000000
Binary files a/js/mobile/assets/flowy.iconset/icon_256x256@2x.png and /dev/null differ
diff --git a/js/mobile/assets/flowy.iconset/icon_32x32.png b/js/mobile/assets/flowy.iconset/icon_32x32.png
deleted file mode 100644
index 67ed0d3..0000000
Binary files a/js/mobile/assets/flowy.iconset/icon_32x32.png and /dev/null differ
diff --git a/js/mobile/assets/flowy.iconset/icon_32x32@2x.png b/js/mobile/assets/flowy.iconset/icon_32x32@2x.png
deleted file mode 100644
index d05c053..0000000
Binary files a/js/mobile/assets/flowy.iconset/icon_32x32@2x.png and /dev/null differ
diff --git a/js/mobile/assets/flowy.iconset/icon_512x512.png b/js/mobile/assets/flowy.iconset/icon_512x512.png
deleted file mode 100644
index 6b338f5..0000000
Binary files a/js/mobile/assets/flowy.iconset/icon_512x512.png and /dev/null differ
diff --git a/js/mobile/assets/icon.png b/js/mobile/assets/icon.png
index a4e96a5..b51e41c 100644
Binary files a/js/mobile/assets/icon.png and b/js/mobile/assets/icon.png differ
diff --git a/js/mobile/assets/icon_green.png b/js/mobile/assets/icon_green.png
deleted file mode 100644
index 009ff0c..0000000
Binary files a/js/mobile/assets/icon_green.png and /dev/null differ
diff --git a/js/mobile/assets/icon_red.png b/js/mobile/assets/icon_red.png
deleted file mode 100644
index da43505..0000000
Binary files a/js/mobile/assets/icon_red.png and /dev/null differ
diff --git a/js/mobile/assets/images/FLOWY-4.svg b/js/mobile/assets/images/FLOWY-4.svg
deleted file mode 100644
index 044b26e..0000000
--- a/js/mobile/assets/images/FLOWY-4.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
diff --git a/js/mobile/assets/notification-icon.png b/js/mobile/assets/notification-icon.png
new file mode 100644
index 0000000..a4e96a5
Binary files /dev/null and b/js/mobile/assets/notification-icon.png differ
diff --git a/js/mobile/assets/sound.wav b/js/mobile/assets/sound.wav
deleted file mode 100644
index 68abf03..0000000
Binary files a/js/mobile/assets/sound.wav and /dev/null differ
diff --git a/js/mobile/assets/sounds/click.mp3 b/js/mobile/assets/sounds/click.mp3
deleted file mode 100644
index 4fd472c..0000000
Binary files a/js/mobile/assets/sounds/click.mp3 and /dev/null differ