SaaSHub helps you find the best software and product alternatives Learn more →
Top 23 Rust Simulation Projects
-
abstreet
Transportation planning and traffic simulation software for creating cities friendlier to walking, biking, and public transit
Project mention: We built the city of Colombo in Cities:Skylines | news.ycombinator.com | 2024-09-01This is super impressive! I'd agree the open-source tooling isn't there yet, but it's coming in a few places. I started a 3D street visualizer but it's only at the scope of a few blocks at a time, not as large as a city area although we'd like to get there someday: https://github.com/3dstreet/3dstreet/
There's also https://github.com/a-b-street/abstreet for larger area simulation but with less visual fidelity
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
-
Great article and very fun to read, as someone who also doesn't have a strong math background, so thank you for explaining these "trivial" concepts :)
Are you planning to read/explain through XPBD (Extended Position Based Dynamics - http://mmacklin.com/xpbd.pdf) as well in future posts? The concept seems to be gaining traction and I've used it with Bevy (via https://github.com/Jondolf/bevy_xpbd) with big success so far, seems more stable than the usual approach.
-
shadow
Shadow is a discrete-event network simulator that directly executes real application code, enabling you to simulate distributed systems with thousands of network-connected processes in realistic and scalable private network experiments using your laptop, desktop, or server running Linux. (by shadow)
Project mention: Ask HN: What are you working on (September 2024)? | news.ycombinator.com | 2024-09-29I'm currently working on a new blockchain technology called Roughchain. Earlier today, I shared the whitepaper in this HN thread [1], and I’ve already received some valuable feedback.
The core architecture is split into two components: a timestamping signing service and a P2P gossip network. By decoupling the gossip network, I'm simulating its performance using a Monte Carlo approach. With a basic gossip protocol, the simulation reaches ~10k TPS on a 100-node, randomly connected network (not fully connected), and I see a lot of potential for further protocol optimizations.
Initially, I considered a more resource-intensive approach using Shadow [2] for more realistic node simulations, as outlined in this discussion on libp2p's Gossipsub stress metrics [3]. However, the Monte Carlo method allows me to simulate the network more efficiently without needing to deploy full nodes.
In parallel, I'm exploring game-theoretical concepts for selecting signers and ensuring the system remains open to new entrants. One paper I'm currently diving into is "Collusion, Efficiency, and Dominant Strategies" [4].
[1] https://news.ycombinator.com/item?id=41687715
[2] https://shadow.github.io/
[3] https://discuss.libp2p.io/t/rough-stress-metrics-for-gossips...
[4] https://www.sciencedirect.com/science/article/pii/S089982561...
-
- RustDesk: Remote Access and Support Software (forked enigo) [3]
I'm close to running integration tests in the CI to prevent regressions and find platform differences, but it's not fully working yet. If someone could get it over the finish line, that would be great.
For Linux there is X11 but also basic Wayland implementation and a libei one, but they only work properly for US keyboards.
[1] https://github.com/enigo-rs/enigo
-
-
-
-
Project mention: Simkube v1.0: Record-and-replay Kubernetes simulator | news.ycombinator.com | 2024-09-09
-
Project mention: Given a potato, you implement a firmware for it | news.ycombinator.com | 2024-10-11
-
I've mentioned my project a few times around HN, but might as well reiterate :)
I took some time off from work to teach myself Rust and to build a WASM colony simulation game. You've got a colony of ants, they're in a cold, foggy crater, and you help them grow and survive. The simulation runs 24/7, like a Tamagotchi, but a bit more complex, like a simplified RimWorld or Dwarf Fortress. I am hoping to design game play systems which focus on mental health, self-care, addiction, motivation, and personal growth and to use the gameplay as a means of encouraging awareness in the player.
https://github.com/MeoMix/symbiants
I haven't added any features in a while, unfortunately, but it's on my mind. For a while I was just adding whatever popped into my head, as a means of learning Rust, and I naively thought the full idea would crystallize with time, but it hasn't. So, I'm trying to take a step back and figure out how to actually make a coherent game that does justice to the mechanics I want to see in my simulation. I've spent a lot of time thinking rather than coding, but I'm optimistic that I'll get through this phase sooner or later. I will admit, though, that trying to take a novel approach with game design is overwhelming at times. That's okay, though! I'm enjoying the process of tinkering with the project and will likely continue tinkering on it for many years to come as a creative outlet for self-actualization.
-
-
-
-
krABMaga
krABMaga: A modern developing art for reliable and efficient Agent-based Model (ABM) simulation with the Rust language
-
particular
N-body simulation library written in Rust featuring BarnesHut and GPU accelerated algorithms.
-
Project mention: I created an application to visualize hyperdimensional rotating cubes | /r/programming | 2023-12-11
-
-
For those who are interested, there is a strong connection between FFT and quantum gates. Applying a gate to a target qubit in a quantum system follows the same computing pattern as one stage in FFT. Consequently, any quantum simulator contains an FFT implementation, and an efficient FFT implementation can be ported to a quantum simulator implementation.
To see how quantum gates work, take a look at Spinoza: https://github.com/QuState/spinoza, a sister project for PhastFT, and Hume, a simpler, but lower performing, Python version: https://github.com/learnqc/code/tree/main/src/hume.
-
-
RustBCA
A free, open-source Binary Collision Approximation (BCA) code for ion-material interactions including sputtering, implantation, and reflection
-
-
rust-flappy-bird-ai
AI learns to play flappy bird using neuro-evolution, implemented in Rust using macroquad
Rust Simulation discussion
Rust Simulation related posts
-
I created an application to visualize hyperdimensional rotating cubes
-
I created an application to visualize hyperdimensional rotating cubes
-
ncube: Visualizing rotating hypercubes of arbitrary dimensions
-
ncube: Visualizing rotating hypercubes of arbitrary dimensions
-
Turmoil, a framework for developing and testing distributed systems
-
Egregoria is a city simulation with high granularity
-
Egregoria: 3D City Builder without a grid
-
A note from our sponsor - SaaSHub
www.saashub.com | 4 Dec 2024
Index
What are some of the best open-source Simulation projects in Rust? This list will help you:
Project | Stars | |
---|---|---|
1 | abstreet | 7,791 |
2 | citybound | 7,722 |
3 | avian | 1,566 |
4 | shadow | 1,453 |
5 | enigo | 1,091 |
6 | autopy | 859 |
7 | blub | 392 |
8 | autopilot-rs | 383 |
9 | simkube | 290 |
10 | kartoffels | 240 |
11 | symbiants | 221 |
12 | shorelark | 212 |
13 | nbody-wasm-sim | 201 |
14 | fdg | 192 |
15 | krABMaga | 176 |
16 | particular | 138 |
17 | ncube | 118 |
18 | open-football | 113 |
19 | spinoza | 65 |
20 | rebop | 46 |
21 | RustBCA | 42 |
22 | pandemic_simulation | 38 |
23 | rust-flappy-bird-ai | 36 |