Hacker News new | ask | show | jobs
by keyle 628 days ago
Dart and Rust mixed together. That's interesting. I'm wondering if Rust is needed for this application, couldn't everything technically done in Dart here?

Also I'd like to know more about the interop between Dart/Rust and what the experience is like!

1 comments

Hi, I'm the developer of Rune. In this project, Dart is primarily used for the GUI, while Rust handles all data-related operations. As you mentioned, Dart's performance and ecosystem are sufficient for most tasks in a typical music player. However, Rune includes some complex features that challenge Dart's ecosystem and performance, such as media recommendation.

Rune has a built-in media analysis and recommendation system. It extracts dozens of acoustic features from audio, creating a high-dimensional space. Searching for nearby points in this space helps listeners find similar tracks, offering features akin to those on streaming platforms.

While creating a traditional audio player is an option, I wanted to explore something new. That's why I chose Rust for its performance and ecosystem advantages.

Regarding the inter-operation between Dart and Rust, I used a library called `rinf`. They communicate via protobuffer by sending signals to each other, and the experience has been quite smooth.

Thanks for the response, good to know.