mirror of
https://github.com/yewstack/yew.git
synced 2025-12-08 21:26:25 +00:00
* Add `--open` to `boids` * Added running instructions to `contexts` * Amended `counter` instructions - Added `--open` flag - Removed unnecessary instructions on how to run with `release` profile * Amended `counter_functional` instructions - Added `--open` flag - Removed unnecessary instructions on how to run with `release` profile * Amended `dyn_create_destroy_apps` instructions - Added `--open` flag - Removed unnecessary instructions on how to run with `release` profile * Added running instructions to `file_upload` * Added running instructions to `function_memory_game`` * Amended `function_router` instructions - Amended `release` profile instructions - Added `--open` flag * Added running instructions to `function_todomvc` * Added running instructions to `futures` * Added running instructions to `game_of_life` * Added running instructions to `immutable` * Added running instructions to `inner_html` * Added running instructions to `js_callback` * Amended `keyed_list` instructions - Added `--open` flag - Amended `release` profile notice * Added running instructions to `mount_point` * Added running instructions to `nested_list` * Added running instructions to `node_refs` * Amended `password_strength` instructions - Added `--open` flag - Amended `release` profile notice * Added running instructions to `portals` * Amended `router` instructions - Added `--open` flag - Amended `release` profile notice * Amended `simple_ssr` instructions - Simplified wording - Removed unnecessary notes - Changed commands so that they should be executed from the `examples/simple_ssr` directory like every other example * Amended `ssr_router` instructions - Removed unnecessary notes - Changed commands so that they should be executed from the `examples/ssr_router` directory like every other example * Added running instructions to `suspense` * Added running instructions to `timer` * Added running instructions to `todo_mvc` * Added running instructions to `two_apps` * Added running instructions to `web_worker_fib` * Added running instructions to `webgl` * Amended various examples - Simplified running instructions - Moved running instructions to the bottom of each `README.md` * Amended `examples/README.md` instructions - Added `release` profile notice - Added `--open` flag - Removed `--release` flag * Apply grammar suggestions from code review Co-authored-by: Kaede Hoshikawa <futursolo@users.noreply.github.com> * Update examples/function_router/README.md Grammar Co-authored-by: Kaede Hoshikawa <futursolo@users.noreply.github.com> * Add Grammar Suggestions from Review * Apply Spelling Suggestion Co-authored-by: Kaede Hoshikawa <futursolo@users.noreply.github.com> --------- Co-authored-by: Kaede Hoshikawa <futursolo@users.noreply.github.com>
Boids Example
A version of Boids implemented in Yew.
This example doesn't make use of a Canvas, instead, each boid has its own element demonstrating the performance of Yew's virtual DOM.
Concepts
The example uses gloo::timers implementation of setInterval to drive the Yew game loop.
Improvements
- Add the possibility to switch the behaviour from flocking to scattering by inverting the cohesion rule so that boids avoid each other. This should also invert the color adaption to restore some variety.
- Add keyboard shortcuts for the actions.
- Make it possible to hide the settings panel entirely
- Bigger boids should accelerate slower than smaller ones
- Share settings by encoding them into the URL
- Resize the boids when "Spacing" is changed. The setting should then also be renamed to something like "Size".
Running
Run this application with the trunk development server:
trunk serve --open