[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-7394":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":23,"hasPages":23,"topics":25,"createdAt":10,"pushedAt":10,"updatedAt":37,"readmeContent":38,"aiSummary":39,"trendingCount":16,"starSnapshotCount":16,"syncStatus":40,"lastSyncTime":41,"discoverSource":42},7394,"KuiklyUI","Tencent-TDS\u002FKuiklyUI","Tencent-TDS","A Kotlin Multiplatform UI framework from Tencent TDS — high-performance, one codebase for six platforms, with dynamic delivery.","https:\u002F\u002Fframework.tds.qq.com\u002F",null,"Kotlin",3192,256,31,61,0,6,40,104,35,29.23,"Other",false,"main",[26,27,28,29,30,31,32,33,34,35,36],"android","app-framework","cross-platform","harmonyos","ios","kmp","kotlin-multiplatform","macos","mini-app","mobile","web","2026-06-12 02:01:38","\n\u003Cp align=\"center\">\n    \u003Cimg alt=\"Kuikly Logo\"  src=\"img\u002Fkuikly_logo.svg\" width=\"200\" \u002F>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n\n[![GitHub Release](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fv\u002Frelease\u002FTencent-TDS\u002FKuiklyUI)](https:\u002F\u002Fgithub.com\u002FTencent-TDS\u002FKuiklyUI\u002Freleases)\n[![License](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-KuiklyUI%20License-blue)](https:\u002F\u002Fgithub.com\u002FTencent-TDS\u002FKuiklyUI\u002Fblob\u002Fmain\u002FLICENSE)\n[![Kotlin](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FKotlin-2.1.21-7F52FF?logo=kotlin&logoColor=white)](https:\u002F\u002Fkotlinlang.org)\n[![Platform](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPlatform-Android%20%7C%20iOS%20%7C%20macOS%20%7C%20HarmonyOS%20%7C%20Web%20%7C%20MiniApp-brightgreen)](https:\u002F\u002Fgithub.com\u002FTencent-TDS\u002FKuiklyUI)\n[![PRs Welcome](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPRs-welcome-brightgreen.svg)](https:\u002F\u002Fgithub.com\u002FTencent-TDS\u002FKuiklyUI\u002Fpulls)\n\n\u003C\u002Fp>\n\nEnglish | [简体中文](.\u002FREADME-zh_CN.md) | [Homepage](https:\u002F\u002Fframework.tds.qq.com\u002F)\n\n\n## Introduction\n`Kuikly` is a comprehensive cross-platform solution for UI and logic based on Kotlin multi-platform. It was launched by Tencent's company-level Oteam in the front-end field. It aims to provide a `high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility`. Currently supported platforms:\n- [X] Android\n- [X] iOS\n- [X] HarmonyOS\n- [X] Web (Beta)\n- [X] Mini Programs (Beta)\n- [X] macOS (Alpha)\n\nSince its launch, `Kuikly` has gained wide recognition from the business. It has been used by many products such as QQ, QQ Music, QQ Browser, Tencent News, Sogou Input Method, MyApp Hub(Tencent's app store), WeSing, Kugou Music, Kuwo Music, Tencent Self-selected Stock, ima.copilot, Weishi, etc.\n## Key Features\n\n- **Cross-platform:** Kotlin-based implementation ensuring consistent operation across multiple platforms - one codebase, six platforms\n- **Native performance:** Generates platform-native binaries (.aar\u002F.framework\u002F.so)\n- **Native development experience:** Native UI rendering, native toolchain support, Kotlin as primary language\n- **Lightweight:** Minimal SDK footprint (AOT mode: ~300KB for Android, ~1.2MB for iOS)\n- **Dynamic capability:** Supports compilation into dynamic deliverables\n- **Multiple paradigms:** Supports both declarative & reactive programming, with self-developed DSL and Compose DSL\n\n## Project Structure\n\n```shell\n.\n├── core                    # Cross-platform module implementing core capabilities like responsive UI, layout algorithms, Bridge communication, etc.\n  ├── src\n    ├──\tcommonMain            # Shared cross-platform code, defining cross-platform interfaces\n    ├── androidMain           # Android platform implementation (outputs aar)\n    ├── jvmMain               # Generic JVM platform code (no Android APIs, outputs jar)\n    ├── appleMain             # apple platform (iOS & macOS) implementation (outputs framework)\n    ├── ohosArm64Main         # Ohos platform implementation（outputs so）\n    ├── jsMain                # H5 and MiniApp platform implementation（outputs js）\n├── core-render-android    # Android platform renderer module\n├── core-render-ios        # iOS platform renderer module\n├── core-render-ohos       # HarmonyOS platform rendering module\n├── core-render-web        # H5 and MiniApp platform rendering module\n├── core-annotations       # Annotations module, defining business annotations like @Page\n├── core-ksp               # Annotation processing module, generates Core entry files\n├── buildSrc               # Build scripts for compilation, packaging, and artifact splitting\n├── demo                   # DSL example code\n├── androidApp             # Android host shell project\n├── iosApp                 # iOS host shell project\n├── macApp                 # macOS host shell project\n├── ohosApp                # Ohos host shell project\n├── miniApp                # miniApp host shell project\n├── h5App                  # h5App host shell project\n├── compose                # Cross-platform module implementing Compose UI, layout, and Kuikly bridging capabilities\n    ├── src\n        ├── commonMain      # Shared cross-platform code, including Compose UI components, layout and event handling\n        ├── androidMain     # Android platform specific implementation\n        └── nativeMain      # iOS and HarmonyOS platform specific implementation\n        └── jsMain          # H5 and MiniApp platform specific implementation\n```\n\n> Note: The Compose directory contains cross-platform source code based on Jetpack Compose 1.7.3 version. We have made necessary modifications and adaptations to the original Compose code to support Kuikly framework's rendering requirements. Some unnecessary features have been commented out to facilitate future upgrades. To ensure stable feature support and avoid conflicts with official code, we have changed the package name from `androidx.compose` to `com.tencent.kuikly.compose`. The original Compose code is from [JetBrains Compose Multiplatform](https:\u002F\u002Fgithub.com\u002FJetBrains\u002Fcompose-multiplatform-core).\n\n## System Requirements\n- iOS 12.0+\n- macOS 10.13+\n- Android 5.0+\n- HarmonyOS Next 5.0.0(12)+\n- Kotlin 1.3.10+\n\n## Getting Started\n\n- [Quick Start](https:\u002F\u002Fkuikly.tds.qq.com\u002FQuickStart\u002Fhello-world.html)\n- [Integration Guide](https:\u002F\u002Fkuikly.tds.qq.com\u002FQuickStart\u002Foverview.html)\n- [Component Features](https:\u002F\u002Fkuikly.tds.qq.com\u002FAPI\u002Fcomponents\u002Foverride.html)\n\n## Building from Source\n### Environment Setup\nRefer to [Environment Configuration](https:\u002F\u002Fkuikly.tds.qq.com\u002FQuickStart\u002Fenv-setup.html)\n- [Android Studio](https:\u002F\u002Fdeveloper.android.com\u002Fstudio)\n\n    if your Android Studio Version >= (2024.2.1) Please switch your Gradle JDK Version to JDK17\n    (this Version default Gradle JDK is 21, it incompatible with the configuration used by the project)\n\n    Android Studio -> Settings -> Build,Execution,Deployment -> Build Tools -> Gradle -> Gradle JDK\n- [XCode](https:\u002F\u002Fdeveloper.apple.com\u002Fxcode\u002F) and [cocoapods](https:\u002F\u002Fcocoapods.org\u002F)\n- [DevEco Studio 5.1.0 or newer](https:\u002F\u002Fdeveloper.huawei.com\u002Fconsumer\u002Fcn\u002Fdeveco-studio\u002F)(API Version >= 18)(You can check the API Version through【 DevECo Studio -> Help -> About HarmonyOS SDK 】)\n- JDK17\n\n### Running Android App\nEnsure environment preparation is complete before building:\n1. Open `KuiklyUI` root directory in `Android Studio` and sync project\n2. Select androidApp configuration, then Run 'androidApp'\n\n### Running iOS App\nEnsure environment preparation is complete before building:\n1. Navigate to `iosApp` directory\n2. Execute `pod install --repo-update`\n3. Open `KuiklyUI` root directory in Android Studio and sync project\n4. Select iOSApp configuration, then Run 'iOSApp'\n\nAlternatively, open KuiklyUI\u002FiosApp in Xcode and Run\n\n> Note: The iosApp project will execute the KMP script when compiling. If you encounter an error with the script read and write file permissions, you need to set `User Script Sandboxing` to `No` in `Xcode -> Build Setting`.\n\n### Running macOS App\nEnsure environment preparation is complete before building:\n1. Navigate to `macApp` directory\n2. Execute `pod install --repo-update`\n3. Open `KuiklyUI` root directory in Android Studio and sync project\n4. Select macOSApp configuration, then Run 'macOSApp'\n\nAlternatively, open KuiklyUI\u002FmacApp in Xcode and Run\n\n> Note: The macApp project will execute the KMP script when compiling. If you encounter an error with the script read and write file permissions, you need to set `User Script Sandboxing` to `No` in `Xcode -> Build Setting`.\n\n### Running Ohos APP\nEnsure environment preparation is complete before building:\n\n#### Mac\n1. In `KuiklyUI` root directory, run the HarmonyOS cross-platform product compile script:\n   ```bash\n   .\u002F2.0_ohos_demo_build.sh\n   ```\n2. Open `KuiklyUI\u002FohosApp` in DevEco Studio and sync project\n3. Connect to Ohos Phone or start the Ohos Emulator, and perform a signature operation `File -> Project Structure -> Signing Configs`\n4. Use DevEco Studio Run `entry`, Run OhosApp\n\n#### Windows\n1. Configure environment variables pointing to HarmonyOS SDK path:\n   ```\n   Variable: OHOS_SDK_HOME\n   Path: %TOOL_HOME%\\sdk\n   Variable: TOOL_HOME\n   Path: D:\\DevEcoStudio\n   ```\n   Note: \"D:\\DevEcoStudio\" uses D drive as an example. Any drive except C drive can be used.\n\n2. In `KuiklyUI` root directory, run the Windows build script:\n   ```cmd\n   2.0_ohos_demo_build.bat\n   ```\n   Or run manually:\n   ```cmd\n   set KUIKLY_AGP_VERSION=7.4.2\n   set KUIKLY_KOTLIN_VERSION=2.0.21-KBA-010\n   gradlew.bat -c settings.2.0.ohos.gradle.kts :demo:linkSharedDebugSharedOhosArm64\n   ```\n3. Copy artifacts to ohosApp (automatically done by bat script):\n   - `demo\\build\\bin\\ohosArm64\\sharedDebugShared\\libshared.so` → `ohosApp\\entry\\libs\\arm64-v8a\\`\n   - `demo\\build\\bin\\ohosArm64\\sharedDebugShared\\libshared_api.h` → `ohosApp\\entry\\src\\main\\cpp\\thirdparty\\biz_entry\\`\n4. Open `KuiklyUI\u002FohosApp` in DevEco Studio and sync project\n5. Connect to Ohos Phone or start the Ohos Emulator, and perform a signature operation `File -> Project Structure -> Signing Configs`\n6. Use DevEco Studio Run `entry`, Run OhosApp\n\n> Note: Windows compilation requires Kotlin toolchain version `2.0.21-KBA-010` which supports Windows\u002FLinux platforms.\n\n### Kotlin Version Support\nThe KuiklyUI directory contains Gradle configurations for various `Kotlin versions`:\n\nNaming convention: `x.x.xx.gradle.kts` (default uses Kotlin 2.0.21)\n\nTest publishing scripts for each version are available as `x.x.xx_test_publish.sh` for building local artifacts.\n\n> Note: Kotlin 1.3.10\u002F1.4.20 require JDK11\n\nAfter successful build on any platform, you can modify Core, Render, and Demo to experience `Kuikly` development.\n\n### Quick Demo Experience\n\u003Cdiv style=\"display: inline-block; text-align: left;\">\n  \u003Cimg src=\"img\u002Fkuikly_demo_android_qr.png\" width=\"200\">\n\u003C\u002Fdiv>\n\nScan the QR code with an Android phone to quickly try the demo. For iPhone and HarmonyOS phones, please follow the steps above to compile and experience the demo app from the source code.\n\n## Roadmap\n[Roadmap (2026)](https:\u002F\u002Fkuikly.tds.qq.com\u002FBlog\u002Froadmap2026.html) | [Roadmap (2025)](https:\u002F\u002Fkuikly.tds.qq.com\u002FBlog\u002Froadmap2025.html)\n\n## Contribution Guidelines\nWe welcome all developers to submit issues or PRs for `Kuikly`. Please review our [Contribution Guide](CONTRIBUTING.md) before contributing.\n\n## Code of Conduct\nAll project participants are expected to adhere to our [Code of Conduct](CODE_OF_CONDUCT.md). Participation constitutes agreement to these terms.\n\n## FAQs\n[`Kuikly` Q&A](https:\u002F\u002Fkuikly.tds.qq.com\u002FQA\u002Fkuikly-qa.html)\n\n## Contributors\n- Special thanks to the first batch of contributors tom(邱良雄), kam(林锦涛), and watson(金盎), who not only pioneered the incubation and exploration of the `Kuikly` cross-platform solutions in the frontend field, but also were the first to implement them in the QQ business.\n- Thanks to the following core contributors for the continuous construction, maintenance, development and optimization of `Kuikly`:\n \u003Cbr>tom kam watson rocky jonas ruifan pel layen bird zealot zhenhua vinney xuanxi ray arnon alexa allens eason\n- We also extend our sincere gratitude to every community contributor who has participated in the development of `Kuikly`. It is your collective effort that drives the continuous growth and improvement of `Kuikly`.\n    \u003Cdiv id=\"list\" style=\"display: flex; flex-wrap: wrap\">\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FTencent-TDS\u002FKuiklyUI\u002Fgraphs\u002Fcontributors\">\n  \u003Cimg src=\"https:\u002F\u002Fcontrib.rocks\u002Fimage?repo=Tencent-TDS\u002FKuiklyUI\" \u002F>\u003C\u002Fa>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FTencent-TDS\u002FKuiklyUI-third-party\u002Fgraphs\u002Fcontributors\">\n  \u003Cimg src=\"https:\u002F\u002Fcontrib.rocks\u002Fimage?repo=Tencent-TDS\u002FKuiklyUI-third-party\" \u002F>\u003C\u002Fa>\u003C\u002Fdiv>\n\n## Application Cases\n### Application Integration\nAt Tencent, Kuikly has been deeply used by 20+ applications, covering 1,000+ pages and serving 500 million+ daily active users, meeting diverse complex requirements across various scenarios.\n\u003Cdiv style=\"display: inline-block; text-align: left;\">\n  \u003Cimg src=\"img\u002Fapplications.png\" width=\"85%\">\n\u003C\u002Fdiv>\nSince going open-source, more external applications beyond Tencent have been actively adopting Kuikly. Additional use cases will be progressively shared upon obtaining approval from respective partners.\n\n### Scenario Examples\nFor typical business application scenarios, please refer to: [Application Scenario Cases](https:\u002F\u002Fkuikly.tds.qq.com\u002FIntroduction\u002Fapplication_cases.html)\n\n## Stay Connected\nScan the QR codes below to follow our latest updates or contact us for inquiries.\n\u003Cp align=\"left\">\n    \u003Cdiv style=\"display: inline-block; text-align: center; margin-right: 20px;\">\n        \u003Cdiv>TDS WeChat Official Account\u003C\u002Fdiv>\n        \u003Cimg alt=\"TDS\" src=\"img\u002Ftds_qrcode.jpeg\" width=\"200\" \u002F>\n    \u003C\u002Fdiv>\n    \u003Cdiv style=\"display: inline-block; text-align: center; margin-right: 20px;\">\n        \u003Cdiv>TDS Framework WeChat Official Account\u003C\u002Fdiv>\n        \u003Cimg alt=\"TDS Framework WeChat Official Account\" src=\"img\u002Ftds_framework_qrcode.jpeg\" width=\"200\" \u002F>\n    \u003C\u002Fdiv>\n    \u003Cdiv style=\"display: inline-block; text-align: center;\">\n        \u003Cdiv>Online Support\u003C\u002Fdiv>\n        \u003Cimg alt=\"Online Consult\" src=\"img\u002Fconsult_qrcode.png\" width=\"200\" \u002F>\n    \u003C\u002Fdiv>\n\u003C\u002Fp>\n\n## Additional Notes\nThe copyright notice pertaining to the Tencent code in this repo was previously in the name of “THL A29 Limited.”  That entity has now been de-registered.  You should treat all previously distributed copies of the code as if the copyright notice was in the name of “Tencent.”\n\n","KuiklyUI 是由腾讯TDS推出的一个基于Kotlin的跨平台UI框架，旨在通过单一代码库支持六大平台（Android、iOS、macOS、HarmonyOS、Web及小程序），并具备动态交付能力。其核心功能包括：跨平台开发一致性、接近原生的应用性能与体验、轻量级SDK以及对多种编程范式的支持如声明式和响应式编程。此外，KuiklyUI还特别设计了自定义DSL与Compose DSL以增强开发者效率。该框架非常适合需要在多个平台上快速迭代且保持一致用户体验的应用场景，特别是在移动应用开发领域内寻求高效解决方案的企业和个人开发者。",2,"2026-06-11 03:12:05","top_language"]