kcl-lang/lib

KCL Multiple Language Bindings including Rust, Go, Python, Java, Kotlin, .NET, Swift, Lua, Node.js, Zig, C, C++, WASM, etc.

Hosted by Cloud Native Computing Foundation · part of Linux Foundation

View on GitHub ↗Jump to charts ↓

kcl-lang/lib has 20+ stars and 10+ forks on GitHub, is written in C#, and was last pushed on Oct 16, 2026. Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 1 hour ago
Added to GitGenius on October 15th, 2026
Created on December 19th, 2022
Open Issues & Pull Requests: 3 (+0)
GitHub issues: Enabled
Number of forks: 16
Total Stargazers: 21 (+0)
Total Subscribers: 2 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 45.5 hours
Mean response time: 14.4 days
90th percentile: 45.0 days
Tracked items: 13

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 2
New in 7 days: 1
Closed in 7 days: 1
Avg open age: 339 days
Stale 30+ days: 1
Stale 90+ days: 1

Recent activity

Opened in 7 days: 1
Closed in 7 days: 1
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • enhancement (4)
  • help wanted (4)
  • good first issue (3)
  • release (3)
  • bug (1)
  • question (1)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

KCL lib is a collection of language bindings and SDKs that expose the low-level API and specification of the KCL language core across multiple programming languages.

The project solves the problem of integrating KCL into applications written in different languages by providing bindings for Rust, Go, Python, Java, Kotlin, .NET, Swift, Lua, Node.js, Zig, C, C++, WASM, Ruby, Julia, and Dart/Flutter. Each binding wraps either the native KCL runtime or calls prebuilt shared libraries, allowing developers to invoke KCL functionality from their language of choice. The bindings range from thin FFI wrappers that directly call prebuilt libkcl binaries to more complete SDKs that encapsulate higher-level APIs on top of the low-level bindings.

Adoption depends on your technology stack and deployment model. Choose this if you need to embed KCL evaluation into an application written in one of the supported languages. The Go binding has a full SDK available separately; the .NET binding ships cross-platform executables for multiple runtime identifiers; the Dart/Flutter binding includes mobile-specific setup for Android and iOS; and the Julia binding uniquely avoids building Rust code by directly calling the prebuilt shared libraries. Java and Kotlin bindings are distributed through Maven with GitHub authentication required. Most bindings depend on prebuilt native runtimes that are not included on the main development branch but are available on release branches and tags; developers building from main must run a download script before linking against the runtime.

The project maintains bindings across a wide range of language ecosystems, indicating sustained effort to keep multiple integration paths current. Mobile support is actively built through dedicated workflows for Dart/Flutter, showing investment in cross-platform deployment scenarios. The repository structure separates low-level bindings from higher-level SDKs, with some languages like Go having their SDK maintained in a separate repository that depends on these bindings.