KCL is a constraint-based record and functional language hosted by Cloud Native Computing Foundation (CNCF) 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.
- KCL Website: https://kcl-lang.io
- KCL Github Repo: https://github.com/kcl-lang
For those interested in cloud-native, platform engineering,compiler, package management tools, and IDEs, we invite you to apply for the 2024 Linux Foundation LFX Mentorship project. You can earn a minimum of $3000 for completing the project! Apply now!
LFX Mentorship Project
We have three Mentorship projects, covering package management tools, compiler, and IDEs.
1. KCL Package Management Dependencies Sparse Checkout
When the scale of KCL project becomes larger and larger, and the external packages that KCL project relies on become more and more, the KCL package manager will become slow due to the need to download a large number of third-party dependencies. It needs to support Sparse-Checkout
, which means downloading specific dependencies as needed rather than all of them, to improve the performance.
- More details: https://github.com/kcl-lang/kpm/issues/304
- Apply Link: https://mentorship.lfx.linuxfoundation.org/project/09391266-0de5-426b-9e11-ceb4c28202ef
2. Optimization of KCL LSP prompt information
Optimize KCL LSP(language server protocol) prompt information, including the implementation of type inlayhint and optimization of hover content rendering. Currently, KCL’s hover content is in plain text format and needs to be rendered into a more beautiful style.
- More details: https://github.com/kcl-lang/kcl/issues/1244
- Apply Link: https://mentorship.lfx.linuxfoundation.org/project/6d85e491-332b-4667-9b57-6ec052310494
3. Supports tree-sitter for KCL
Tree-sitter is a parser generator tool and an incremental parsing library. In order to support more features of the IDE, we need a more complete syntax tree, and for easy integration with the community, we intend to use tree-sitter to build a more complete parser system for KCL.
- More details: https://github.com/kcl-lang/tree-sitter-kcl/issues/2
- Apply Link: https://mentorship.lfx.linuxfoundation.org/project/47661e9d-d390-45d8-b05e-0fb3a30612f4
4. How to Apply
Apply for your favorite project on the LFX mentorship platform. You can visit the LFX mentorship platform through the following link. The application starts on Monday May 13, and ends on Tues May 28, 5:00 PM PDT.
If you have any questions, please feel free to get more information directly from the corresponding issue or discuss with us:
KCL Package Management Dependencies Sparse Checkout: https://github.com/kcl-lang/kpm/issues/304
Optimization of KCL LSP prompt information: https://github.com/kcl-lang/kcl/issues/1244
Supports tree-sitter for KCL: https://github.com/kcl-lang/tree-sitter-kcl/issues/2
5. Project Timeline
activity | date |
---|---|
Mentee applications open | Monday May 13 - Tues May 28, 5:00 PM PDT |
Application review/admission decisions | Wed May 29 - Tues June 11, 5:00 PM PDT |
Selection notifications | Tues June 12, 5:00 PM PDT |
Mentorship program begins with the initial work assignments | Monday June 17 (Week 1) |
Midterm mentee evaluations and first stipend payments | Wednesday July 24 (Week 6) |
Final mentee evaluations and mentee feedback/blog submission due, second and final stipend payment approvals | Wed Aug 28, 5:00 PM PST (Week 12) |
Last day of term | Friday Aug 30 |