openkraken/kraken
A high-performance, web standards-compliant rendering engine based on Flutter.
repo name | openkraken/kraken |
repo link | https://github.com/openkraken/kraken |
homepage | https://openkraken.com |
language | TypeScript |
size (curr.) | 159597 kB |
stars (curr.) | 1470 |
created | 2020-12-04 |
license | Apache License 2.0 |
Kraken
๐ Have a try
-
Install Kraken CLI (macOS only currently)
$ npm i @openkraken/cli -g
-
Open with kraken
# kraken [localfile|URL] $ kraken https://raw.githubusercontent.com/openkraken/kraken/master/kraken/example/assets/bundle.js
๐ Why kraken
-
Quick development ๐
Compatibility with web standards means you don’t have to change your stack.
const text = document.createTextNode('Hello World!'); document.body.appendChild(text);
-
Cross platform โ๏ธ
Seamless integration with Flutter, supports web, mobile (iOS, Android) and desktop (MacOS, Linux, Windows).
-
Fast performance ๐
Provide native-like performance such as navigation, animation and infinite list scrolling.
๐ Contributing
By contributing to Kraken, you agree that your contributions will be licensed under its Apache-2.0 License.
-
Prerequisites
- Node.js v12.0 or later
- Flutter version in the
kraken/pubspec.yaml
- CMake v3.2.0 or later
- Xcode (10.12) or later (Running on macOS or iOS)
- Android NDK version
20.0.5594570
or later (Running on Android)
-
Install
$ npm install
-
Building bridge
Building bridge for all supported platform (macOS, iOS, Android)
$ npm run build:bridge:all
Building bridge for one platform
macOS
$ npm run build:bridge:macos
iOS
$ npm run build:bridge:ios
Android
For Windows users, make sure that running this command under MINGW64 environment(eg. Git Bash).
$ npm run build:bridge:android
-
Start example
$ cd kraken/example $ flutter run
-
Test (Unit Test and Integration Test)
$ npm test