A Dart compiler which generates interpretable and executable bytecode to implement code push (hot update)
Chimera Flutter Code Push
Chimera is a Dart compiler developed by ourselves, which generates interpretable and executable bytecode to implement code push (hot update).
Advantages of our products
- Support all pub.dev libraries, no library restrictions.
- It does not affect the original project structure when used, as long as the code that needs hot update is generated by compiling.
- SDK does not use JS, LUA and Apple’s official sensitive API, so don’t worry about being blocked.
- You can switch this function remotely at any time as needed, or you can customize the framework that suits you to achieve hot fixes for logic problems, etc.
- Support hot updates for all platforms (Android, IOS, Windows, Mac) released by Flutter.
- Support Dart code obfuscation to prevent App from being decompiled.
- Support memory detection and performance analysis.
- As long as the compilation is passed, the App can load and execute code through the network, and easily implement WeChat applets.
Example project
Our open source sample project (Flutter Gallery), Flutter Gallery is Google’s official sample App, it uses a lot of Dart features, and we have supported them.
Use tutorial
Currently we only support versions above Flutter2. The old version was simply abandoned due to lack of manpower. I believe everyone will upgrade to the Flutter2 version.
For tutorials, we only released video tutorials. Of course, video tutorials are not enough. Please be patient and wait for us to release more tutorials.
-
Get to know the SDK
Supplement iOS release tutorial
-
Flutter Gallery access to SDK super detailed tutorial
New World
Execution performance is increased by 10 times, WebAssembly bytes are generated, and WebAssembly bytecodes are interpreted and executed on the
machine to improve virtual performance.
There are two options
Solution 1: performance can be infinitely close to Dart AOT performance, but whether iOS supports TBD.
Solution 2: Performance increase 10 times execution performance, support all platforms.
Regarding performance improvement, I don’t recommend having to generate WebAssembly bytecode. Determine whether bytecode needs to be generated according to the scenario (for example, there is a large amount of data calculation), or a separate thread (Isolate) can be set to support it.
It is recommended to compile a small part of Dart code to generate WebAssembly.
Participate in contribution
We still have a lot of work to do in improving and constructing supporting facilities. Everyone is welcome to participate in the development.
I need a friend who knows how to develop web. Hope to help develop the official website and website backend (hope to be more beautiful). Friends who are interested can contact me.
Email contact
Sponsor
If you are also interested in sponsoring us, welcome to add WeChat~