WIP: Dioxus Bootstrap migration — hero_books #82

Draft
mik-tf wants to merge 22 commits from development_dioxus_bootstrap into development
Owner

DO NOT MERGE

Fresh Dioxus WASM frontend using dioxus-bootstrap-css v0.1.6 per lhumina_code/home#26

Note: ignores prior hero_books_dioxus (v0.1.2)

## DO NOT MERGE Fresh Dioxus WASM frontend using dioxus-bootstrap-css v0.1.6 per https://forge.ourworld.tf/lhumina_code/home/issues/26 Note: ignores prior hero_books_dioxus (v0.1.2)
feat: add Dioxus WASM frontend (hero_books_ui_wasm) using dioxus-bootstrap-css v0.1.6
Some checks failed
Test / test (pull_request) Failing after 4s
Test / integration (pull_request) Has been skipped
c2124d464a
Fresh Dioxus WASM crate that replaces Askama templates with a reactive
client-side UI. Translates all ~10 template pages (home, library, book,
page, search, docs, import, convert, pdf_viewer) into Dioxus components
using dioxus-bootstrap-css for Bootstrap 5.3 parity.

Server changes (hero_books_ui):
- Add --dist CLI arg to serve Dioxus WASM dist directory
- Add /assets/{*path} route for WASM static files
- Feature-gate askama as optional (default enabled)
- Add dist_dir to AppState

WASM crate structure:
- src/main.rs: hash-based client-side routing
- src/rpc.rs: JSON-RPC and REST API client
- src/types.rs: shared data types
- src/components/: one component per page
- assets/books.css: custom styles from base.html
- Dioxus.toml: build configuration
refactor: convert hero_books_ui_wasm to archipelago library crate
Some checks failed
Test / test (pull_request) Failing after 8s
Test / integration (pull_request) Has been skipped
0cb4760bb2
fix: set default features to ["web"] for hero_os_app integration
Some checks failed
Test / test (pull_request) Failing after 7s
Test / integration (pull_request) Has been skipped
a20837b3a5
fix: always expose context prop (not cfg-gated)
Some checks failed
Test / test (pull_request) Failing after 5s
Test / integration (pull_request) Has been skipped
9186861ddd
fix: make hero_archipelagos_core non-optional and activate web feature
Some checks failed
Test / test (pull_request) Failing after 5s
Test / integration (pull_request) Has been skipped
cd45adcbe2
hero_archipelagos_core is needed for IslandContext at all times, not just
when standalone. Make it a required dependency and forward the web feature
so it works correctly when imported as a git dependency by hero_os_app.
fix: use single-segment route params for Axum 0.7 compat
Some checks failed
Test / test (pull_request) Failing after 5s
Test / integration (pull_request) Has been skipped
ed602ac3eb
fix: RPC routing + conditional BootstrapHead for hero_os integration
Some checks failed
Test / test (pull_request) Failing after 6s
Test / integration (pull_request) Has been skipped
8a27484131
fix: replace hash polling with hashchange event listener
Some checks failed
Test / test (pull_request) Failing after 6s
Test / integration (pull_request) Has been skipped
7dd8fdef53
Replaced 100ms polling loop with proper hashchange event listener
for hash-based routing. More efficient and works reliably when
embedded in hero_os iframes.
fix: synchronous RPC base init (before first render)
Some checks failed
Test / test (pull_request) Failing after 5s
Test / integration (pull_request) Has been skipped
8758630b56
chore: bump dioxus-bootstrap-css to 0.1.7
Some checks failed
Test / test (pull_request) Failing after 41s
Test / integration (pull_request) Has been skipped
9ed0fa7ac8
chore: bump dioxus-bootstrap-css to 0.1.8
Some checks failed
Test / test (pull_request) Failing after 39s
Test / integration (pull_request) Has been skipped
2c59df5572
Convert raw HTML div/table/button elements to proper dioxus-bootstrap-css
components (Card, Table, Button, Row, Col) for pixel-perfect Bootstrap 5.3.
refactor: convert raw button elements to Button component
Some checks failed
Test / test (pull_request) Failing after 34s
Test / integration (pull_request) Has been skipped
fb189c7166
Convert remaining button { class: "btn..." } to Button { color, outline, size }
using dioxus-bootstrap-css components.
refactor: convert remaining inline button elements to Button component
Some checks failed
Test / test (pull_request) Failing after 32s
Test / integration (pull_request) Has been skipped
a37ef47e8a
chore: bump dioxus-bootstrap-css to 0.1.9
Some checks failed
Test / test (pull_request) Failing after 42s
Test / integration (pull_request) Has been skipped
b580f7ffb1
chore: bump dioxus-bootstrap-css to 0.2.0 (extends GlobalAttributes)
Some checks failed
Test / test (pull_request) Failing after 30s
Test / integration (pull_request) Has been skipped
e1d3c0b2a3
chore: bump dioxus-bootstrap-css to 0.2.1
Some checks failed
Test / test (pull_request) Failing after 40s
Test / integration (pull_request) Has been skipped
7dc2a26f04
refactor: convert raw Bootstrap HTML to dioxus-bootstrap-css components
Some checks failed
Test / test (pull_request) Failing after 40s
Test / integration (pull_request) Has been skipped
eb2f255966
refactor: convert link-buttons to Button { href } (dioxus-bootstrap-css 0.2.2)
Some checks failed
Test / test (pull_request) Failing after 45s
Test / integration (pull_request) Has been skipped
b61272904b
refactor: convert toast to dioxus-bootstrap-css Toast/ToastContainer (0.2.5)
Some checks failed
Test / test (pull_request) Failing after 35s
Test / integration (pull_request) Has been skipped
64a0e4d886
refactor: remove Bootstrap-overriding CSS, use pure dioxus-bootstrap utility classes
Some checks failed
Test / test (pull_request) Failing after 44s
Test / integration (pull_request) Has been skipped
0d21c9cbe7
Some checks failed
Test / test (pull_request) Failing after 44s
Test / integration (pull_request) Has been skipped
This pull request has changes conflicting with the target branch.
  • Cargo.lock
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin development_dioxus_bootstrap:development_dioxus_bootstrap
git switch development_dioxus_bootstrap

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch development
git merge --no-ff development_dioxus_bootstrap
git switch development_dioxus_bootstrap
git rebase development
git switch development
git merge --ff-only development_dioxus_bootstrap
git switch development_dioxus_bootstrap
git rebase development
git switch development
git merge --no-ff development_dioxus_bootstrap
git switch development
git merge --squash development_dioxus_bootstrap
git switch development
git merge --ff-only development_dioxus_bootstrap
git switch development
git merge development_dioxus_bootstrap
git push origin development
Sign in to join this conversation.
No reviewers
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_books!82
No description provided.