Dioxus WASM desktop framework for Hero OS with macOS-style window management.
  • Rust 80%
  • TypeScript 13.8%
  • CSS 3.7%
  • JavaScript 2.1%
  • HTML 0.4%
Find a file
despiegk bbb540fda4
Some checks failed
Build and Test / build (push) Failing after 37s
chore: align deps to development branch
2026-06-06 08:52:14 +02:00
.forgejo/workflows ci: rewrite forge URLs with token so cargo deps clone in CI 2026-05-31 08:59:44 +02:00
android/res Phase 2e/2f: Bootstrap 5.3 theme unification + dock sizing 2026-03-06 20:04:41 -05:00
crates chore: align deps to development branch 2026-06-06 08:52:14 +02:00
docs docs: fix stale hero_os_ui/web.sock/Makefile refs after admin rename + hero_os_web removal 2026-06-01 09:13:12 +02:00
schema chore: auto-commit local changes before pull 2026-05-31 23:42:10 +02:00
schemas/desktop feat: migrate to OServer::run_cli() and rename contexts → spaces 2026-03-12 15:09:55 +01:00
stubs chore: fix hero_rpc_osis + hero_rpc_generator stubs for current hero_lib API 2026-06-01 13:50:04 +02:00
tests Merge origin/development_30: add browser-based URL route tests 2026-05-08 07:37:30 +02:00
.gitignore chore: remove Cargo.lock and update gitignore 2026-06-06 08:05:43 +02:00
Cargo.toml chore: align deps to development branch 2026-06-06 08:52:14 +02:00
Cargo.toml.hero_builder_backup chore: add RPC/web stubs, update workspace deps, and bump Cargo.lock 2026-06-01 09:32:38 +02:00
clippy.toml refactor: Update dependencies and add slides iframe support (#70) 2026-04-19 20:11:15 +00:00
config.toml feat(dock): enable Office archipelago in default profile 2026-05-01 18:48:47 +00:00
Dioxus.toml perf(hero_os_app): lazy-load LiveKit CDN SDK on first connect 2026-06-01 03:04:01 +02:00
PURPOSE.md docs: fix stale hero_os_ui/web.sock/Makefile refs after admin rename + hero_os_web removal 2026-06-01 09:13:12 +02:00
README.md docs: fix stale hero_os_ui/web.sock/Makefile refs after admin rename + hero_os_web removal 2026-06-01 09:13:12 +02:00
VALIDATION_REPORT.json chore: update rust-version to 1.95.0 and canonical dep versions 2026-05-08 09:35:33 +02:00

Hero OS

A desktop environment framework built with Dioxus (Rust → WASM) that serves as the host for Hero Archipelago islands. Provides macOS-style window management, context switching, and theming for dynamically loaded WASM applications.

Architecture

hero_os/
├── crates/
│ ├── hero_os/ # CLI — registers services with hero_proc
│ ├── hero_os_server/ # OpenRPC state server (desktop state, windows, layout)
│ ├── hero_os_sdk/ # Type-safe async Rust SDK client
│ ├── hero_os_admin/ # HTTP server — serves WASM assets over admin.sock
│ ├── hero_os_app/ # Dioxus desktop environment (web/mobile/desktop)
│ └── hero_os_examples/ # Example programs using the SDK
├── schemas/ # OSchema definitions
└── tests/ # Playwright E2E tests

Sockets

All services use Unix domain sockets exclusively (no TCP ports).

Service Socket Path
hero_os_server $PATH_SOCKET/hero_os/rpc.sock
hero_os_admin $PATH_SOCKET/hero_os/admin.sock

Service Communication

Browser
 └─ hero_os_app (WASM, served by hero_os_admin)
 └─ hero_router → /hero_osis_<domain>/rpc → per-domain RPC sockets

hero_os CLI (--start/--stop)
 └─ hero_proc (process supervisor)
 ├─ hero_os_server (desktop state, OpenRPC)
 └─ hero_os_admin (HTTP asset server)

Running

Prerequisites: hero_proc_server must be running.

service os start --update --reset
service os stop
service os status

Frontend dev (hot reload)

cd crates/hero_os_app
env -u RUSTC_WRAPPER dx serve --platform web

Key Concepts

Contexts

A context is a workspace/namespace that isolates data (e.g., herozero, geomind). Each context has its own desktop state and theme.

Themes

A theme defines visual appearance (colors, typography, spacing). Stored in the backend, referenced by context.

Islands

Islands are self-contained WASM applications loaded as web components from Hero Archipelagos. Each island registers as a custom HTML element, receives configuration via attributes, and makes API calls to the backend.

Testing

cargo test --workspace

Playwright E2E specs live under tests/.

Document Purpose
docs/ARCHITECTURE.md Detailed system architecture
docs/ANDROID.md Android/Volla OS setup
docs/MOBILE.md Mobile layout and sizing
docs/DIOXUS.md Dioxus configuration