diff --git a/README.md b/README.md new file mode 100644 index 00000000..e6938a06 --- /dev/null +++ b/README.md @@ -0,0 +1,35 @@ +# Kubekit + +Kubekit is developed to provide a simple, fast, and customizable TypeScript Kubernetes client and controller runtime. It is designed with type safety and efficiency in mind, and is optimized for Tree Shaking compatibility. It supports Next.js and Node.js, with planned future support for Bun and Deno. + +## Features + +- **Simple**: Intuitive API that is easy to use +- **Fast**: Optimized performance +- **Slim**: Minimal dependencies +- **Customizable**: A variety of configuration options +- **Type-Safe**: Fully leverages TypeScript +- **Tree Shaking Compatibility**: Does not include any unused code +- **Support**: Next.js, Node.js + +## Components + +### [@kubekit/client](https://github.com/appthrust/kubekit-ts/tree/main/packages/kubekit-client) + +A TypeScript Kubernetes client and controller runtime. + +### [@kubekit/sync](https://github.com/appthrust/kubekit-ts/tree/main/packages/kubekit-sync) + +Expands the `OpenAPI` schema containing CustomResources obtained from `$ kubectl get --raw /openapi/v3` into files. + +### @kubekit/codegen + +Generates TypeScript type definitions from the `OpenAPI` schema and produces minimal client code that wraps `@kubekit/client`. + +## Origin + +Kubekit was inspired by RTK Query and RTK Query Codegen, and the creator of Kubekit was an initial contributor to [rtk-query-codegen-openapi](https://github.com/reduxjs/redux-toolkit/tree/master/packages/rtk-query-codegen-openapi). It was developed to incorporate the best features of `RTK Query` and `RTK Query Codegen` while adapting to the unique characteristics of Kubernetes, resulting in the creation of `@kubekit/client` and `@kubekit/codegen`. + +## Support and Contributions + +Kubekit is an open-source project that welcomes feedback and contributions from the community. Please refer to the [Contribution Guide](https://github.com/appthrust/kubekit-ts/blob/main/CONTRIBUTING.md).