ruffle-rs.github.io icon indicating copy to clipboard operation
ruffle-rs.github.io copied to clipboard

Blog post idea: Rust dependency spotlight

Open Herschel opened this issue 1 year ago • 4 comments

A big part of Ruffle's success is from a perfect-storm of other crates from the Rust community. We could do a spotlight on some of our big dependencies that were key for us getting off the ground.

  • wasm-bindgen: Made Wasm a first-class citizen in Rust
  • wgpu: Portable GPU abstraction and gave us a head start for WebGPU on web
    • naga: Transpile AGAL shaders, allowing Stage3D to function
  • winit: Desktop app
  • cpal: Desktop audio
  • sample: Audio, resampling
  • gc-arena: GC
  • lyon: Allowed us easy tessellation of shapes for the wgpu/WebGL backends
  • symphonia: MP3 parsing
  • who else?

Herschel avatar Mar 27 '23 01:03 Herschel

What about quick-xml?

Lord-McSweeney avatar Mar 27 '23 03:03 Lord-McSweeney

Two of our video decoders are from NihAV: https://nihav.org/ (https://codecs.multimedia.cx/)

They are both fast, have no external dependencies, their code is clean (few unwraps), and the developer is knowledgeable (an FFmpeg contributor), responsive, and was kind enough to relicense these parts of his code for us.

torokati44 avatar Mar 27 '23 06:03 torokati44

wasm-opt (Binaryen) is also nice.

torokati44 avatar Mar 27 '23 08:03 torokati44

egui now that the Desktop app has a UI using it.

danielhjacobs avatar May 25 '23 19:05 danielhjacobs