Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
K

kcl

> 数据库
Open source

KCL Programming Language Core and API (CNCF Sandbox Project). https://kcl-lang.io

2.4K stars0 likes0 views
WebsiteGitHub

About

KCL Programming Language Core and API (CNCF Sandbox Project). https://kcl-lang.io

KCL: Constraint-based Record & Functional Language

English | 简体中文

Introduction | Features | What is it for | Installation | Documentation | Contributing

## Introduction KCL is an open-source, constraint-based record and functional language that enhances the writing of complex configurations, including those for cloud-native scenarios. With its advanced programming language technology and practices, KCL is dedicated to promoting better modularity, scalability, and stability for configurations. It enables simpler logic writing and offers ease of automation APIs and integration with homegrown systems.

## What is it for? You can use KCL to + [Generate low-level static configuration data](https://kcl-lang.io/docs/user_docs/guides/configuration) such as JSON, YAML, etc., or [integrate with existing data](https://kcl-lang.io/docs/user_docs/guides/data-integration). + Reduce boilerplate in configuration data with the [schema modeling](https://kcl-lang.io/docs/user_docs/guides/schema-definition). + Define schemas with [rule constraints for configuration data and validate](https://kcl-lang.io/docs/user_docs/guides/validation) them automatically. + Organize, simplify, unify and manage large configurations without side effects through [gradient automation schemes and GitOps](https://kcl-lang.io/docs/user_docs/guides/automation). + Manage large configurations in a scalable way for different environments with [isolated configuration blocks](https://kcl-lang.io/docs/reference/lang/tour#config-operations). + Mutating or validating Kubernetes resources with [cloud-native configuration tool plugins](https://www.kcl-lang.io/docs/user_docs/guides/working-with-k8s/mutate-manifests/kubectl-kcl-plugin). + Used as a platform engineering programming language to deliver modern applications with [KusionStack](https://kusionstack.io). ## Features + **Easy-to-use**: Originated from high-level languages ​​such as Python and Golang, incorporating functional language features with low side effects. + **Well-designed**: Independent spec-driven syntax, semantics, runtime and system modules design. + **Quick modeling**: [Out-of-the-box modules](https://artifacthub.io/packages/search?org=kcl&sort=relevance&page=1) and [Schema](https://kcl-lang.io/docs/reference/lang/tour#schema)-centric configuration types and modular abstraction. + **Rich capabilities**: Configuration with type, logic and policy based on [Config](https://kcl-lang.io/docs/reference/lang/tour#config-operations), [Schema](https://kcl-lang.io/docs/reference/lang/tour#schema), [Lambda](https://kcl-lang.io/docs/reference/lang/tour#function), [Rule](https://kcl-lang.io/docs/reference/lang/tour#rule). + **Stability**: Configuration stability is achieved through a [static type system](https://kcl-lang.io/docs/reference/lang/tour/#type-system), [constraints](https://kcl-lang.io/docs/reference/lang/tour/#validation), and [rules](https://kcl-lang.io/docs/reference/lang/tour#rule). + **Scalability**: High scalability is assured with an [automatic merge mechanism](https://kcl-lang.io/docs/reference/lang/tour/#-operators-1) of isolated config blocks. + **Fast automation**: Gradient automation scheme of [CRUD APIs](https://kcl-lang.io/docs/reference/lang/tour/#kcl-cli-variable-override), [multilingual SDKs](https://kcl-lang.io/docs/reference/xlang-api/overview), and [language plugin](https://github.com/kcl-lang/kcl-plugin) + **High performance**: High compile-time and runtime performance using Rust & C, and support compilation to native code and [WASM](https://webassembly.org/). + **API affinity**: Native support for ecological API specifications such as [OpenAPI](https://github.com/kcl-lang/kcl-openapi), Kubernetes CRD, Kubernetes Resource Model (KRM) spec. + **Developer-friendly**: Friendly development experiences with rich [language tools](https://kcl-lang.io/docs/tools/cli/kcl/) (Format, Lint, Test, Vet, Doc, package management tools etc.), and multiple [IDE extensions](https://kcl-lang.io/docs/tools/Ide/). + **Safety & maintainable**: Domain-oriented, no system-level functions such as native threads and IO, low noise and security risk, easy maintenance and governance. + **Rich multi-language SDK**: Rust, Go, Python, .NET, Java and Node.js SDKs meet different scenarios and application use prelude. + **Integrations**: Abstract, mutate and validate manifests through [Kubectl KCL Plugin](https://github.com/kcl-lang/kubectl-kcl), [Kustomize KCL Plugin](https://github.com/kcl-lang/kustomize-kcl), [Helm KCL Plugin](https://github.com/kcl-lang/helm-kcl), [KPT KCL SDK](https://github.com/kcl-lang/kpt-kcl) or [Crossplane KCL Function](https://github.com/kcl-lang/crossplane-kcl). + **Production-ready**: Widely used in production practices of platform engineering and automation at Ant Group. ## How to choose? A detailed feature and scenario comparison is [here](https://kcl-lang.io/docs/user_docs/getting-started/intro). ## Installation For more information about installation, please check the [Installation Guide](https://kcl-lang.io/docs/user_docs/getting-started/install/) on the KCL official website. ## Documentation Detailed documentation is available at [KCL Website](https://kcl-lang.io/) There is also a very nice [Devin](https://devin.ai/) generated document available at [**deepwiki**](https://deepwiki.com/kcl-lang/kcl). ## Contributing See [Developing Guide](./docs/dev_guide/1.about_this_guide.md). You can also get started by opening the project in GitHub Codespaces. ## Community See the [community](https://github.com/kcl-lang/community) for ways to join us. ## License

GitHub Issues· 0 open

View all on GitHub

No open issues yet, or sync has not completed.

Highlights

  • •Generate low-level static configuration data such as JSON, YAML, etc., or integrate with existing data.
  • •Reduce boilerplate in configuration data with the schema modeling.
  • •Define schemas with rule constraints for configuration data and validate them automatically.
  • •Organize, simplify, unify and manage large configurations without side effects through gradient automation schemes and GitOps.
  • •Manage large configurations in a scalable way for different environments with isolated configuration blocks.
  • •Mutating or validating Kubernetes resources with cloud-native configuration tool plugins.
  • •Used as a platform engineering programming language to deliver modern applications with KusionStack.
  • •Easy-to-use: Originated from high-level languages ​​such as Python and Golang, incorporating functional language features with low side effects.
  • •Well-designed: Independent spec-driven syntax, semantics, runtime and system modules design.
  • •Quick modeling: Out-of-the-box modules and Schema-centric configuration types and modular abstraction.

> Tags

Rustcloud-nativecompilerconfigurationconfiguration-language

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category数据库
PricingOpen source

> Related tools

P
PostgreSQL
功能强大的开源关系型数据库
R
Redis
内存数据结构存储,常用作缓存与队列
M
MySQL
广泛使用的开源关系型数据库