logo

kd_clients

Build PR Status Check Unit Test PR Status Check

Good First GitHub Issues Discord

!! NOTICE !!

This library is still under development and is not at v1.0.0 yet!! However, all of the major features are available, so we encourage you to use it and provide feedback. That is what open source is all about. πŸ₯³


πŸ“– About kd_clients πŸ“–

kd_clients is a collection of various HTTP clients that help make talking to APIs easier. An example of this are the GitHub clients. These clients take care of pagination and also gives you the option to choose which page and how many pages you want to return. This removes the worry of having to deal with pagination. All data returned has a model associated with it to provide types for typescript.

The client functions are more pragmatic and follow a more natural way of dealing with clients. If you want to deal with tags, you use the TagClient, or use the RepoClient for repo related information. All of the clients will follow the same β€œpattern” of pagination as well as how they are used.

Uuuhh..why?

Over time, I have been building various scripts, tools, and infrastructure using the deno platform, for all of the repositories in the KinsonDigital organization. As my infrastructure, scripts, and tools grew, I kept needing to access various APIs. I also did not want to reinvent the wheel every time, or have to copy and paste the HTTP client code every time I needed to talk to a public API. So I finally decided to β€œpackage” all of the HTTP client code to use it everywhere, as well as make it available for the public to use. This is the more responsible thing to do. πŸ˜‰


πŸ™πŸΌ Contributing πŸ™πŸΌ

Interested in contributing? If so, click here to learn how to contribute your time or here if you are interested in contributing your funds via one-time or recurring donation.

πŸ”§ Maintainers πŸ”§

x-logo-dark-mode x-logo-light-mode Calvin Wilkinson (KinsonDigital GitHub Organization - Owner)


πŸš” Licensing And Governance πŸš”

Contributor Covenant GitHub

This software is distributed under the very permissive MIT license and all dependencies are distributed under MIT-compatible licenses. This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community.