Skip to content

jwodder/minigh

Repository files navigation

Project Status: Active – The project has reached a stable, usable state and is being actively developed. CI Status Minimum Supported Rust Version MIT License

GitHub | crates.io | Documentation | Issues | Changelog

minigh is a thin wrapper around ureq for interacting with the GitHub REST API that aims to make common operations easier & simpler. Notable features include:

  • When making a request, you only need to specify the part of the URL after the API base URL.

  • Support for iterating over paginated results

  • Most request methods return decoded JSON.

  • Bring Your Own Schema: minigh does not define any types for values returned by the API; that is left up to the user.

  • Errors raised for 4xx and 5xx responses include the body of the response in the error value, and this body is included when displaying with {:#}.

  • The Accept and X-GitHub-Api-Version headers are automatically set to their recommended values.

  • Follows GitHub's recommendations for dealing with rate limits, including waiting between mutating requests and waiting & retrying in response to rate-limit errors

  • Automatic retrying on 5xx errors with exponential backoff

About

Minimal and opinionated GitHub REST API client

Topics

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •  

Languages