3 unstable releases

0.2.1 Dec 11, 2024
0.2.0 Dec 6, 2024
0.1.0 Nov 19, 2024

#84 in Visualization

Download history 8224/week @ 2025-03-02 12096/week @ 2025-03-09 10405/week @ 2025-03-16 10342/week @ 2025-03-23 8988/week @ 2025-03-30 11534/week @ 2025-04-06 10560/week @ 2025-04-13 9122/week @ 2025-04-20 7362/week @ 2025-04-27 7966/week @ 2025-05-04 6994/week @ 2025-05-11 7133/week @ 2025-05-18 5679/week @ 2025-05-25 5910/week @ 2025-06-01 7065/week @ 2025-06-08 7578/week @ 2025-06-15

26,375 downloads per month
Used in 4 crates (via re_view_graph)

MIT/Apache

89KB
2.5K SLoC

Fjädra 🪽

A library for simulating physical forces on particles, which was heavily inspired by d3-force. Its main use case is to layout graphs (i.e. node-link diagrams)—if you are looking for a pure physics engine, you might want to check out the excellent Rapier and Parry from Dimforge.

[!WARNING] This library is currently under development so the API is still likely to change.


Development is sponsored by Rerun, a startup building
an SDK for visualizing streams of multimodal data.


Design Goals

  • Produce outputs that are comparable to d3-force.
  • Lightweight with only minimal dependencies to allow wasm-bindgen and no_std support.
  • Idiomatic Rust API that still follows the d3 conventions where possible.
  • Performance that allows user interactions.

Forces

We currently support the following forces:

  • Collision on circles (Collide)
  • Centering (Center)
  • Springs (Link)
  • Charge and repulsion (ManyBody)
  • Gravity (PositionX and PositionY)

No runtime deps