krABMaga
quadtrees
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
krABMaga
-
Bevy 0.8: data oriented game engine built in Rust
I wrote a thesis for my bachelor's regarding the development of an agent-based simulation framework in Rust where I managed the visualization side. The project takes inspiration from other frameworks such as MASON (in particular for the architecture), NetLogo, Agent.jl and others. I initially developed the visualization subsystem with Amethyst, after my thesis Amethyst was discontinued and, since I was already following Bevy since it went public and it looked like it was gaining a lot of momentum, I refactored our framework to switch to Bevy. Our project is open source: https://github.com/krABMaga/krABMaga . Being my first approach to Rust and my first serious greenfield project, I think there are a lot of parts which can be improved, but I was able to get by with my extremely limited knowledge of both Rust and Bevy and obtain decent results. The things I loved the most of Bevy was the low amount of boilerplate code needed, the WASM+WebGL support which allowed me to easily let guests run simulations from our github.io site (https://krabmaga.github.io/) at near native (sequential) performance and, just like the whole Rust ecosystem, the friendliness of the community. Even though I bothered quite a bit on the Discord server since the documentation wasn't the clearest for me back when I started (Bevy 0.5), both the team members and users always led me a hand. I also think the ECS approach is extremely useful for our usecase, by defining agents as entities with the Agent component, along with a system which acts as an event loop by executing a simulation step and triggering the agents' behaviour rules.
-
krABMaga is finally officially available.
The framework includes the possibility to visualize simulation using bevy-engine on local or via browser exploiting wasm technology. You can play with some examples on our website! Also take a look at our github page, the framework is completely open-source and we would be pleased to receive your comments!
quadtrees
What are some alternatives?
rust-agent-based-models - Reliable and efficient agent-based models in Rust
hemi - single handed typing trainer
bevy_editor_pls - In-App editor tools for bevy applications
rustwasmc - Tool for building Rust functions for Node.js. Combine the performance of Rust, safety and portability of WebAssembly, and ease of use of JavaScript.
nbody-wasm-sim - An N-body WebAssembly simulation using Web GPU
gameboy - Gameboy Emulator written in Rust and WebAssembly. 8-bit microprocessor: Sharp LR35902.
epirust - An agent-based epidemiology simulation framework built in Rust
bitque - A simplified Jira clone built with seed.rs and actix
pomo - minimalistic pomodoro timer
rust-wasm-on-lambda-edge - Rust/WASM on AWS Lambda@Edge (CloudFront)
bevy_mod_js_scripting