flutter_js icon indicating copy to clipboard operation
flutter_js copied to clipboard

Notify users of the realistic state of the project and link an alternative

Open MulverineX opened this issue 1 year ago • 3 comments

Great work on this library, I really appreciate the inspiration here. However, there are many issues with actually using this, so I decided to work with @andycall from the OpenWebF (formerly the Kraken framework developed by Alibaba staff) on a new library that extracts the more fully featured & polished JS bindings to QuickJS from their primary library. I'm hoping you can update the README of your project to help users find what they need to build their apps.

Repo: https://github.com/openwebf/mercury

MulverineX avatar Apr 30 '24 23:04 MulverineX

When this issue https://github.com/openwebf/mercury/issues/30#issuecomment-2128385868 gets sorted I would actually consider to inform people about mercury. also, this project also supports JavascriptCore for MacOs/IPhone so, I don't know if it is a option for people interested in JavascriptCore instead of running QuickJS. I will get myself more informed about mercury and any other alternatives and try also to triage the more impacting opened issues here .

abner avatar Jun 07 '24 07:06 abner

JavascriptCore isn't needed for Apple Store anymore, the rules are to prevent third party browser engines, not internal app code. Minecraft Bedrock uses QuickJS. Having a single runtime is also easier for testing & allows you to distribute precompiled bytecode for all platforms.

Understandable that you would rather not recommend mercury until that issue is resolved though 😅. It kinda snuck up on us. I'll post an update about it soon.

IMO the problem with this library isn't the lack of maintenance, it's the lack of a global persistent state/runtime & web standard polyfills. It's meant to evaluate bits of JavaScript, not run components of your app with it.

MulverineX avatar Jun 07 '24 07:06 MulverineX

About the flutter_js library features/capabilities I actually tried to describe it clearly in the README, but I think as the level of understanding of the difference between a Javascript runtime and a web browser is quite unbalanced between people.

JavascriptCore isn't needed for Apple Store anymore, the rules are to prevent third party browser engines, not internal app code. Minecraft Bedrock uses QuickJS. Having a single runtime is also easier for testing & allows you to distribute precompiled bytecode for all platforms.

Understandable that you would rather not recommend mercury until that issue is resolved though 😅. It kinda snuck up on us. I'll post an update about it soon.

IMO the problem with this library isn't the lack of maintenance, it's the lack of a global persistent state/runtime & web standard polyfills. It's meant to evaluate bits of JavaScript, not run components of your app with it.

abner avatar Jun 08 '24 16:06 abner