diff --git a/.gitignore b/.gitignore index b2587d4..a1927ca 100644 --- a/.gitignore +++ b/.gitignore @@ -31,3 +31,7 @@ artifacts/ # Bench / runtime logs *.log python/scripts/alignment_results.json + +# Local-only alignment tooling: MLX reference-output exporter for the +# device-side `e0cli aligncheck` gate (kept out of tree for now). +/scripts/export_reference_outputs.py diff --git a/android/.gitignore b/android/.gitignore index 6249d89..de56d7c 100644 --- a/android/.gitignore +++ b/android/.gitignore @@ -14,3 +14,5 @@ local.properties /build-dl # model sources and converted gguf (self-service downloads) /models +# kotlin compiler session dir (build output, like .gradle) +/.kotlin diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 803a6c4..96d64d7 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -5,6 +5,7 @@ diff --git a/android/app/src/main/res/drawable-nodpi/ic_launcher_foreground.png b/android/app/src/main/res/drawable-nodpi/ic_launcher_foreground.png new file mode 100644 index 0000000..3ea3794 Binary files /dev/null and b/android/app/src/main/res/drawable-nodpi/ic_launcher_foreground.png differ diff --git a/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 0000000..d03c3c2 --- /dev/null +++ b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,7 @@ + + + + + + diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000..6a0d058 Binary files /dev/null and b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png differ diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000..c888911 Binary files /dev/null and b/android/app/src/main/res/mipmap-mdpi/ic_launcher.png differ diff --git a/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000..0fb89fa Binary files /dev/null and b/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000..12e32cc Binary files /dev/null and b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000..c91dba9 Binary files /dev/null and b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/macos/.gitignore b/macos/.gitignore new file mode 100644 index 0000000..7ac9c97 --- /dev/null +++ b/macos/.gitignore @@ -0,0 +1,8 @@ +# Frontend + Rust build output materialized by `yarn install` / `tauri dev` +# (never committed). Mirrors windows/.gitignore. +app/node_modules/ +app/dist/ +app/src-tauri/target/ +app/src-tauri/gen/ +target/ +work/ diff --git a/macos/app/public/edge0_logo.png b/macos/app/public/edge0_logo.png new file mode 100644 index 0000000..5b842d7 Binary files /dev/null and b/macos/app/public/edge0_logo.png differ diff --git a/macos/app/src-tauri/icons/edge0_logo.png b/macos/app/src-tauri/icons/edge0_logo.png index 712a001..1f7b8ea 100644 Binary files a/macos/app/src-tauri/icons/edge0_logo.png and b/macos/app/src-tauri/icons/edge0_logo.png differ diff --git a/macos/app/src-tauri/icons/icon.icns b/macos/app/src-tauri/icons/icon.icns index 2b1fc68..d73c1c2 100644 Binary files a/macos/app/src-tauri/icons/icon.icns and b/macos/app/src-tauri/icons/icon.icns differ diff --git a/macos/app/src-tauri/icons/icon.png b/macos/app/src-tauri/icons/icon.png index 1c757ee..1db17c8 100644 Binary files a/macos/app/src-tauri/icons/icon.png and b/macos/app/src-tauri/icons/icon.png differ diff --git a/macos/app/src-tauri/icons/tray-idle.png b/macos/app/src-tauri/icons/tray-idle.png index 5f7cb03..2b9ee0b 100644 Binary files a/macos/app/src-tauri/icons/tray-idle.png and b/macos/app/src-tauri/icons/tray-idle.png differ diff --git a/macos/app/src-tauri/icons/tray-loading.png b/macos/app/src-tauri/icons/tray-loading.png index efd2679..2b9ee0b 100644 Binary files a/macos/app/src-tauri/icons/tray-loading.png and b/macos/app/src-tauri/icons/tray-loading.png differ diff --git a/macos/app/src-tauri/icons/tray-resident.png b/macos/app/src-tauri/icons/tray-resident.png index 5888448..2b9ee0b 100644 Binary files a/macos/app/src-tauri/icons/tray-resident.png and b/macos/app/src-tauri/icons/tray-resident.png differ diff --git a/macos/app/src-tauri/icons/tray-throttled.png b/macos/app/src-tauri/icons/tray-throttled.png index 8405431..2b9ee0b 100644 Binary files a/macos/app/src-tauri/icons/tray-throttled.png and b/macos/app/src-tauri/icons/tray-throttled.png differ diff --git a/macos/app/src/components/AppShell.tsx b/macos/app/src/components/AppShell.tsx index fb9a02d..ce3e046 100644 --- a/macos/app/src/components/AppShell.tsx +++ b/macos/app/src/components/AppShell.tsx @@ -1,5 +1,5 @@ import { Link, Outlet, useRouter } from "@tanstack/react-router"; -import { BookOpen, Home, Menu, Plus, Server, Settings, Sparkles, X } from "lucide-react"; +import { BookOpen, Home, Menu, Plus, Server, Settings, X } from "lucide-react"; import { useEffect, useState, useSyncExternalStore } from "react"; import { useTranslation } from "react-i18next"; @@ -127,9 +127,12 @@ export function AppShell() { >
- - - +
{t("app.name")} {t("app.localLabel")} diff --git a/macos/app/src/routes/welcome.tsx b/macos/app/src/routes/welcome.tsx index b3eb02f..8e1e5a0 100644 --- a/macos/app/src/routes/welcome.tsx +++ b/macos/app/src/routes/welcome.tsx @@ -1,7 +1,7 @@ import { useEffect, useState } from "react"; import { Link } from "@tanstack/react-router"; import { invoke } from "@tauri-apps/api/core"; -import { Download, Sparkles } from "lucide-react"; +import { Download } from "lucide-react"; import { useTranslation } from "react-i18next"; import { daemonStore } from "../bridge/state"; @@ -79,9 +79,12 @@ export function WelcomeCard() { return (
- - - +

{t("welcome.title")}

diff --git a/windows/app/public/edge0_logo.png b/windows/app/public/edge0_logo.png new file mode 100644 index 0000000..5b842d7 Binary files /dev/null and b/windows/app/public/edge0_logo.png differ diff --git a/windows/app/src-tauri/icons/128x128.png b/windows/app/src-tauri/icons/128x128.png index 8881e31..90fe8b0 100644 Binary files a/windows/app/src-tauri/icons/128x128.png and b/windows/app/src-tauri/icons/128x128.png differ diff --git a/windows/app/src-tauri/icons/128x128@2x.png b/windows/app/src-tauri/icons/128x128@2x.png index cede665..c964306 100644 Binary files a/windows/app/src-tauri/icons/128x128@2x.png and b/windows/app/src-tauri/icons/128x128@2x.png differ diff --git a/windows/app/src-tauri/icons/32x32.png b/windows/app/src-tauri/icons/32x32.png index 91b2b70..b75aa76 100644 Binary files a/windows/app/src-tauri/icons/32x32.png and b/windows/app/src-tauri/icons/32x32.png differ diff --git a/windows/app/src-tauri/icons/64x64.png b/windows/app/src-tauri/icons/64x64.png index 27b33c4..6da2f1b 100644 Binary files a/windows/app/src-tauri/icons/64x64.png and b/windows/app/src-tauri/icons/64x64.png differ diff --git a/windows/app/src-tauri/icons/Square107x107Logo.png b/windows/app/src-tauri/icons/Square107x107Logo.png index 1786101..92a6ae1 100644 Binary files a/windows/app/src-tauri/icons/Square107x107Logo.png and b/windows/app/src-tauri/icons/Square107x107Logo.png differ diff --git a/windows/app/src-tauri/icons/Square142x142Logo.png b/windows/app/src-tauri/icons/Square142x142Logo.png index a8d9be0..482517e 100644 Binary files a/windows/app/src-tauri/icons/Square142x142Logo.png and b/windows/app/src-tauri/icons/Square142x142Logo.png differ diff --git a/windows/app/src-tauri/icons/Square150x150Logo.png b/windows/app/src-tauri/icons/Square150x150Logo.png index 6ce53f6..8547c2c 100644 Binary files a/windows/app/src-tauri/icons/Square150x150Logo.png and b/windows/app/src-tauri/icons/Square150x150Logo.png differ diff --git a/windows/app/src-tauri/icons/Square284x284Logo.png b/windows/app/src-tauri/icons/Square284x284Logo.png index 978b900..b4a0089 100644 Binary files a/windows/app/src-tauri/icons/Square284x284Logo.png and b/windows/app/src-tauri/icons/Square284x284Logo.png differ diff --git a/windows/app/src-tauri/icons/Square30x30Logo.png b/windows/app/src-tauri/icons/Square30x30Logo.png index 8196a25..e5ae03a 100644 Binary files a/windows/app/src-tauri/icons/Square30x30Logo.png and b/windows/app/src-tauri/icons/Square30x30Logo.png differ diff --git a/windows/app/src-tauri/icons/Square310x310Logo.png b/windows/app/src-tauri/icons/Square310x310Logo.png index b8b47b3..c04215f 100644 Binary files a/windows/app/src-tauri/icons/Square310x310Logo.png and b/windows/app/src-tauri/icons/Square310x310Logo.png differ diff --git a/windows/app/src-tauri/icons/Square44x44Logo.png b/windows/app/src-tauri/icons/Square44x44Logo.png index 519be7f..ca20a14 100644 Binary files a/windows/app/src-tauri/icons/Square44x44Logo.png and b/windows/app/src-tauri/icons/Square44x44Logo.png differ diff --git a/windows/app/src-tauri/icons/Square71x71Logo.png b/windows/app/src-tauri/icons/Square71x71Logo.png index 90e28f4..2ddff78 100644 Binary files a/windows/app/src-tauri/icons/Square71x71Logo.png and b/windows/app/src-tauri/icons/Square71x71Logo.png differ diff --git a/windows/app/src-tauri/icons/Square89x89Logo.png b/windows/app/src-tauri/icons/Square89x89Logo.png index 744ea79..d4aaa85 100644 Binary files a/windows/app/src-tauri/icons/Square89x89Logo.png and b/windows/app/src-tauri/icons/Square89x89Logo.png differ diff --git a/windows/app/src-tauri/icons/StoreLogo.png b/windows/app/src-tauri/icons/StoreLogo.png index 0b37792..f2f4bc0 100644 Binary files a/windows/app/src-tauri/icons/StoreLogo.png and b/windows/app/src-tauri/icons/StoreLogo.png differ diff --git a/windows/app/src-tauri/icons/edge0_logo.png b/windows/app/src-tauri/icons/edge0_logo.png index 712a001..1f7b8ea 100644 Binary files a/windows/app/src-tauri/icons/edge0_logo.png and b/windows/app/src-tauri/icons/edge0_logo.png differ diff --git a/windows/app/src-tauri/icons/icon.ico b/windows/app/src-tauri/icons/icon.ico index 02a0484..b04f3e4 100644 Binary files a/windows/app/src-tauri/icons/icon.ico and b/windows/app/src-tauri/icons/icon.ico differ diff --git a/windows/app/src-tauri/icons/icon.png b/windows/app/src-tauri/icons/icon.png index 94b3731..1db17c8 100644 Binary files a/windows/app/src-tauri/icons/icon.png and b/windows/app/src-tauri/icons/icon.png differ diff --git a/windows/app/src-tauri/icons/tray-idle.png b/windows/app/src-tauri/icons/tray-idle.png index 5f7cb03..2b9ee0b 100644 Binary files a/windows/app/src-tauri/icons/tray-idle.png and b/windows/app/src-tauri/icons/tray-idle.png differ diff --git a/windows/app/src-tauri/icons/tray-loading.png b/windows/app/src-tauri/icons/tray-loading.png index efd2679..2b9ee0b 100644 Binary files a/windows/app/src-tauri/icons/tray-loading.png and b/windows/app/src-tauri/icons/tray-loading.png differ diff --git a/windows/app/src-tauri/icons/tray-resident.png b/windows/app/src-tauri/icons/tray-resident.png index 5888448..2b9ee0b 100644 Binary files a/windows/app/src-tauri/icons/tray-resident.png and b/windows/app/src-tauri/icons/tray-resident.png differ diff --git a/windows/app/src-tauri/icons/tray-throttled.png b/windows/app/src-tauri/icons/tray-throttled.png index 8405431..2b9ee0b 100644 Binary files a/windows/app/src-tauri/icons/tray-throttled.png and b/windows/app/src-tauri/icons/tray-throttled.png differ diff --git a/windows/app/src/components/AppShell.tsx b/windows/app/src/components/AppShell.tsx index 0e1e34b..32cff50 100644 --- a/windows/app/src/components/AppShell.tsx +++ b/windows/app/src/components/AppShell.tsx @@ -1,7 +1,7 @@ // AppShell — sidebar + full-width main area (Atomic-Chat style three-segment layout). // Hash routing; state comes from the single-pulse stores in api/client. // autoLoad intent chain: download ready -> issue one load -> on success create a thread and enter chat. -import { BookOpen, Menu, Plus, Server, Settings, Sparkles, X } from "lucide-react"; +import { BookOpen, Menu, Plus, Server, Settings, X } from "lucide-react"; import { useEffect, useState, useSyncExternalStore, type ReactNode } from "react"; import { @@ -102,9 +102,12 @@ export function AppShell({ view, children }: { view: string; children: ReactNode