Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -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
2 changes: 2 additions & 0 deletions android/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -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
1 change: 1 addition & 0 deletions android/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
<application
android:name=".Edge0App"
android:allowBackup="false"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/Theme.Edge0">
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 7 additions & 0 deletions android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Adaptive launcher icon: the edge0 mark is a full-bleed black rounded square,
so the foreground uses the artwork unchanged over a pure-black background. -->
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@android:color/black" />
<foreground android:drawable="@drawable/ic_launcher_foreground" />
</adaptive-icon>
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions macos/.gitignore
Original file line number Diff line number Diff line change
@@ -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/
Binary file added macos/app/public/edge0_logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified macos/app/src-tauri/icons/edge0_logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified macos/app/src-tauri/icons/icon.icns
Binary file not shown.
Binary file modified macos/app/src-tauri/icons/icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified macos/app/src-tauri/icons/tray-idle.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified macos/app/src-tauri/icons/tray-loading.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified macos/app/src-tauri/icons/tray-resident.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified macos/app/src-tauri/icons/tray-throttled.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
11 changes: 7 additions & 4 deletions macos/app/src/components/AppShell.tsx
Original file line number Diff line number Diff line change
@@ -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";

Expand Down Expand Up @@ -127,9 +127,12 @@ export function AppShell() {
>
<div className="flex items-center justify-between px-4 pb-2 pt-4">
<div className="flex items-center gap-2">
<span className="grid size-8 place-items-center rounded-xl bg-fg text-surface shadow-sm">
<Sparkles size={16} aria-hidden />
</span>
<img
src="/edge0_logo.png"
alt=""
aria-hidden
className="size-8 rounded-xl shadow-sm object-cover"
/>
<div>
<span className="block text-sm font-bold tracking-tight">{t("app.name")}</span>
<span className="block text-[10px] font-medium uppercase tracking-[0.16em] text-muted">{t("app.localLabel")}</span>
Expand Down
11 changes: 7 additions & 4 deletions macos/app/src/routes/welcome.tsx
Original file line number Diff line number Diff line change
@@ -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";
Expand Down Expand Up @@ -79,9 +79,12 @@ export function WelcomeCard() {
return (
<div className="e0-chat-empty px-6" data-testid="welcome-card">
<div className="e0-chat-column mx-auto space-y-5 text-center">
<span className="mx-auto grid size-12 place-items-center rounded-2xl bg-fg text-surface shadow-sm">
<Sparkles size={20} aria-hidden />
</span>
<img
src="/edge0_logo.png"
alt=""
aria-hidden
className="mx-auto size-12 rounded-2xl shadow-sm object-cover"
/>
<div>
<h2 className="text-3xl font-semibold tracking-tight">{t("welcome.title")}</h2>
<p className="mx-auto mt-2 max-w-lg text-sm leading-relaxed text-muted">
Expand Down
Binary file added windows/app/public/edge0_logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified windows/app/src-tauri/icons/128x128.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified windows/app/src-tauri/icons/128x128@2x.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified windows/app/src-tauri/icons/32x32.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified windows/app/src-tauri/icons/64x64.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified windows/app/src-tauri/icons/Square107x107Logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified windows/app/src-tauri/icons/Square142x142Logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified windows/app/src-tauri/icons/Square150x150Logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified windows/app/src-tauri/icons/Square284x284Logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified windows/app/src-tauri/icons/Square30x30Logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified windows/app/src-tauri/icons/Square310x310Logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified windows/app/src-tauri/icons/Square44x44Logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified windows/app/src-tauri/icons/Square71x71Logo.png
Binary file modified windows/app/src-tauri/icons/Square89x89Logo.png
Binary file modified windows/app/src-tauri/icons/StoreLogo.png
Binary file modified windows/app/src-tauri/icons/edge0_logo.png
Binary file modified windows/app/src-tauri/icons/icon.ico
Binary file not shown.
Binary file modified windows/app/src-tauri/icons/icon.png
Binary file modified windows/app/src-tauri/icons/tray-idle.png
Binary file modified windows/app/src-tauri/icons/tray-loading.png
Binary file modified windows/app/src-tauri/icons/tray-resident.png
Binary file modified windows/app/src-tauri/icons/tray-throttled.png
11 changes: 7 additions & 4 deletions windows/app/src/components/AppShell.tsx
Original file line number Diff line number Diff line change
@@ -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 {
Expand Down Expand Up @@ -102,9 +102,12 @@ export function AppShell({ view, children }: { view: string; children: ReactNode
<aside data-testid="app-sidebar" className={"e0-sidebar " + (sidebarOpen ? "e0-sidebar-open" : "")} data-open={sidebarOpen ? "true" : "false"}>
<div className="flex items-center justify-between px-4 pb-2 pt-4">
<div className="flex items-center gap-2">
<span className="grid size-8 place-items-center rounded-xl bg-fg text-surface shadow-sm">
<Sparkles size={16} aria-hidden />
</span>
<img
src="/edge0_logo.png"
alt=""
aria-hidden
className="size-8 rounded-xl shadow-sm object-cover"
/>
<div>
<span className="block text-sm font-bold tracking-tight">{t("app.name")}</span>
<span className="block text-[10px] font-medium uppercase tracking-[0.16em] text-muted">{t("app.localLabel")}</span>
Expand Down
11 changes: 7 additions & 4 deletions windows/app/src/routes/welcome.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
// installed; completes the loop within three clicks). "Download & enable" = one explicit
// intent: create the task + arm the one-shot token (auto-load on completion lives in the
// AppShell chain).
import { Sparkles, Download } from "lucide-react";
import { Download } from "lucide-react";
import { useState, useSyncExternalStore } from "react";

import { downloadStore, shellStore, startDownload } from "../api/client";
Expand Down Expand Up @@ -56,9 +56,12 @@ export function WelcomeCard() {
return (
<div className="e0-chat-empty px-6" data-testid="welcome-card">
<div className="e0-chat-column mx-auto space-y-5 text-center">
<span className="mx-auto grid size-12 place-items-center rounded-2xl bg-fg text-surface shadow-sm">
<Sparkles size={20} aria-hidden />
</span>
<img
src="/edge0_logo.png"
alt=""
aria-hidden
className="mx-auto size-12 rounded-2xl shadow-sm object-cover"
/>
<div>
<h2 className="text-3xl font-semibold tracking-tight">{t("welcome.title")}</h2>
<p className="mx-auto mt-2 max-w-lg text-sm leading-relaxed text-muted">
Expand Down
10 changes: 9 additions & 1 deletion windows/app/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,15 @@ import { defineConfig } from "vite";
export default defineConfig({
plugins: [react(), tailwindcss()],
clearScreen: false,
server: { port: 1420, strictPort: true, host: "127.0.0.1" },
server: {
port: 1420,
strictPort: true,
host: "127.0.0.1",
// Windows: chokidar takes down the dev server with EBUSY when cargo links
// while Defender locks fresh artifacts. The tauri CLI watches src-tauri on
// its own; vite should not. (Same exclusion as create-tauri-app's template.)
watch: { ignored: ["**/src-tauri/**"] },
},
envPrefix: ["VITE_", "TAURI_"],
build: { target: "es2022", sourcemap: false },
});
Loading