Hacker News new | ask | show | jobs
by munro 1343 days ago
The movement is really choppy on my iPhone 13 Pro. Did you use requestAnimationFrame for the tuning movement? & CSS animations for switching instruments? Kinda just wondering how the performance could be so bad. Reminds me of PhoneGap circa 2013
2 comments

I can confirm. It is extremely choppy and resource hungry for what it does. Since they use Flutter, the UI is rendered using 119 canvas elements. The same thing could be implemented using the web platform (no flutter and no rust) with better results.
I was thinking the same thing- I've seen many mobile performant, web based tuners before, it's a very common personal project. If the intention was to make a web based tuner from the start, Flutter and Rust was a big step down from just using HTML and JS.

I know the trend on HN is to upvote any project with Rust in the title, and to hate on native JS, but projects like this that have to use a bunch of tooling to eventually compile down to JS would have almost always been better just using JS in the first place IMO.

Flutter is not web-based. It's all custom.
That is true (that Flutter builds natively on all platforms it supports, and controls every pixel on the screen, unlike React Native and similar).

But I suspect these people were trying the web version of this (pretty neat, IMO) app.

Flutter does build for the web but then it does (of course) use web technologies to deliver the UI. To get the native experience on iOS, you'd have to download the iOS version from the App Store or something like that.