A cross-platform framework based on modern C++, supporting biz dev via Lua & JS.
👉 The Rust version(DynRS) is in works.
| Android | iOS | HarmonyOS | Windows | macOS | Linux | WASM | |
|---|---|---|---|---|---|---|---|
| Lua Runtime | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ⭕ |
| JS Runtime | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ⭕ |
| Network | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| SQLite | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ⭕ |
| Key-Value Store | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ⭕ |
| JSON Codec | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| Crypto | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| Zip | ✔️ | ✔️ | ❕ | ✔️ | ✔️ | ✔️ | ✔️ |
| Device Info | ✔️ | ✔️ | ✔️ | 🔨 | ✔️ | 🔨 | ❌ |
| Log | ✔️ | ✔️ | ✔️ | ❕ | ✔️ | ✔️ | ✔️ |
- ❔ : Unknown;
- ❌ : Not supported;
- ⭕ : Limited supported;
- 🔨 : Under developing;
⁉️ : Failed to compile;- ❕ : Succeed to compile, not tested;
- ❗ : With running error;
- ✔️ : Tested.
Unsupported Features in WASM:
- Load Lua script with file;(Will trigger a prompt window)
- C/C++ callback JS function in async thread.
| Feature | Standard | Unsupported Platforms |
|---|---|---|
| std::from_chars for integer | C++17 | iOS 16.5-, macOS 13.4-; |
| std::from_chars for float | C++17 | All; |
| std::format | C++20 | iOS 16.3-, macOS 13.3-, HarmonyOS; |
| std::jthread | C++20 | Apple; |
| std::ranges | C++20 | iOS 16.3-, macOS 13.3-, HarmonyOS; |
| Heterogeneous lookup for hash map/set | C++20 | HarmonyOS; |
| std::move_only_function | C++23 | Clang, Apple & HarmonyOS; |
| std::ranges::to | C++23 | Clang, Apple & HarmonyOS; |
| std::ranges::views::chunk | C++23 | Clang, Apple & HarmonyOS; |
| std::ranges::views::enumerate | C++23 | Clang, Apple & HarmonyOS; |
| std::out_ptr | C++23 | HarmonyOS; |
- ada-url: URL parser;(Requires
std::rangesin C++20) - curl: Networking;
- cJSON: JSON codec;
- iOS-cmake: CMake toolchain for Apple platforms;
- json.lua: JSON codec for Lua;
- libuv: Asynchronous I/O;
- lua: Lua runtime;
- MMKV: Key-value storage;
- openssl: Crypto;
- quickjs: JS runtime;
- spdlog: File logging;
- sqlite: DB storage;
- zlib: Compression.