Replace Books island iframe with native Dioxus WASM view router #36

Open
opened 2026-03-02 20:39:13 +00:00 by mik-tf · 0 comments
Owner

Context

The Books island (archipelagos/embed/books) renders an <iframe> pointing to http://localhost:8883, broken in any deployed environment. The crate already contains views/mod.rs (2819 lines) with complete Dioxus implementations for all 9 views connected to services/mod.rs.

Goals

  • Remove iframe + postMessage theme sync from island.rs; wire all 9 Dioxus views into a view router
  • base_url from context.api_host (relative /hero_books behind proxy, absolute for direct access)
  • Add [package.metadata.island] to Cargo.toml so build_standalone.sh discovers and builds this island
  • Remove obsolete host/port props from BooksAppProps and lib.rs
  • Add ViewList with navigation + hidden views to metadata()
## Context The Books island (`archipelagos/embed/books`) renders an `<iframe>` pointing to `http://localhost:8883`, broken in any deployed environment. The crate already contains `views/mod.rs` (2819 lines) with complete Dioxus implementations for all 9 views connected to `services/mod.rs`. ## Goals - Remove iframe + postMessage theme sync from `island.rs`; wire all 9 Dioxus views into a view router - `base_url` from `context.api_host` (relative `/hero_books` behind proxy, absolute for direct access) - Add `[package.metadata.island]` to `Cargo.toml` so `build_standalone.sh` discovers and builds this island - Remove obsolete `host`/`port` props from `BooksAppProps` and `lib.rs` - Add `ViewList` with navigation + hidden views to `metadata()`
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_archipelagos#36
No description provided.