m5/org/openalice-desktop

openalice-desktop

**OpenAlice Social — native desktop client for the OpenAlice platform.**

Features
4
Status
·unknown
Last activity
1mo ago
Branch
mvp

Architecture rating

D1mo ago
consistencyB

Strong substrate adoption — manifest 100, drift 100, code_health 100, 0 circular deps, 0 dead imports, AGENTS.md present and standard Tauri 2 layout, indicating uniform conventions across the shell.

docsC

Valid manifest (100) with clear summary, README + AGENTS.md present and roadmap 80, but feature score weak (52/100) and 10 missing docstrings on a thin codebase leave in-code architecture notes thin.

securityC-

Tauri 2 capability model present (src-tauri/capabilities/ scopes permissions) and deep-link/auto-update flows wired, but no evidence of update signature verification or hardened CSP, and as a web-wrapper it inherits the social UI's authn rather than enforcing its own.

reliabilityD

Auto-update and deep-link handling provide some resilience, but one god-module with max cyclomatic complexity 25 + 1 deep-nesting flag concentrate risk, and no visible timeout/retry/graceful-shutdown or error-handling signals for tray/PTT lifecycle.

observabilityD

No metrics, tracing, or health probe (Atlas health fails: 'no https endpoint in manifest exposes' — expected for desktop), structured logging unconfirmed; only intrinsic Tauri logging assumed, so observability is effectively absent.

data layerD

Manifest owns zero tables; no migrations dir, no schema, no RLS/FK/constraints — a stateless desktop shell with no data layer to evaluate, scored conservatively for absence (no local persistence/secure-store signals shown).

testingF

No test directory or test files detected (migrations/tests presence empty) and inspector reports no test signals — zero coverage of deep-link parsing, PTT, or auto-update critical paths.

source · auto-grader-2026-06-16

Ecosystem manifest

.atlas-deps.yml

Tauri 2 desktop shell for openalice-social — wraps the social web UI in a native window with tray, PTT, deep links, and auto-update.

Runtime deps
  • via SOCIAL_URL (hardcoded https://social.blal.pro)
    Loads the social UI in the native iframe — frontend served by openalice-social
  • via CSP connect-src / wss://social-api.blal.pro
    Real-time chat + event streams via openalice-social-api WS layer
  • via tauri-plugin-updater endpoints (social-api.blal.pro)
    Auto-update checks: GET /api/v1/updates/check/{target}/{arch}/{current_version}
Exposes
  • desktop_binary: openalice-social-desktop

Roadmap · what's planned next

3% avg5 goals

Code composition

tokei · loc
726loc
  • Rust46.3%
  • Shell22.6%
  • JSON18.5%
  • HTML9.1%
  • TOML3.6%
  • Rust46.3%· 336
  • Shell22.6%· 164
  • JSON18.5%· 134
  • HTML9.1%· 66
  • TOML3.6%· 26
Language% codecodecommentsblanksfiles
Rust46.3%33620402
Shell22.6%16420374
JSON18.5%134003
HTML9.1%66351
TOML3.6%26031
Markdown0.0%081352

Telemetry ribbon · last 90 days

1 event
MAYJUNJUL2026-06-10 · lifecycle · first scan — repo indexedNOW
commitmanifestlifecyclekind

desktop/ptt

1 feature
  • desktop.ptt.global-shortcut
    src-tauri/src/main.rs:47
    Registers a user-configurable global shortcut (default `Alt+V`) that emits `ptt-start` / `ptt-end` Tauri events, which are forwarded to the iframe via `postMessage` so the web app can activate voice without window focus. [tauri::command]

desktop/shell

1 feature
  • desktop.shell.iframe-host
    src-tauri/src/main.rs:1
    Wraps `platform.blal.pro/chat` in a native Tauri window, delegating all UI to the web app while providing OS-level integration (tray, shortcuts, deep links, updater). ![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]

desktop/updater

1 feature
  • desktop.updater.auto-check
    src-tauri/src/main.rs:110
    Polls `api.platform.blal.pro/api/v1/updates/check/{target}/{arch}/{version}` 5 s after launch; downloads silently with progress events, then emits `update-installed` so the frontend banner prompts the user to restart.

desktop/window

1 feature
  • desktop.window.state-persistence
    src-tauri/src/main.rs:199
    Saves and restores outer position and size across restarts via `tauri-plugin-store` (`settings.json`). Minimum size guard (800×600) prevents off-screen placement on multi-monitor setups.