MHanafy.GithubClient
1.0.3
dotnet add package MHanafy.GithubClient --version 1.0.3
NuGet\Install-Package MHanafy.GithubClient -Version 1.0.3
<PackageReference Include="MHanafy.GithubClient" Version="1.0.3" />
paket add MHanafy.GithubClient --version 1.0.3
#r "nuget: MHanafy.GithubClient, 1.0.3"
// Install MHanafy.GithubClient as a Cake Addin
#addin nuget:?package=MHanafy.GithubClient&version=1.0.3
// Install MHanafy.GithubClient as a Cake Tool
#tool nuget:?package=MHanafy.GithubClient&version=1.0.3
GithubClient
A .Net GitHub client that allows easy access to Github API, making developing Github apps a breaze.
To get started, you'll need to create a new Github App, this can be either private or public To create a new app, visit https://github.com/settings/apps
To use this library, you'll need:
- A private key, grab one by heading to your app's page, and selecting
Generate a private key
and download the key to your local machine - The AppId, which you can get from the settings page
Now, start using the library as follows:
var serviceProvider = SetupDi();
//using DI to get the client, would use settings to get the required values from the config file.
var client = serviceProvider.GetService<IGithubClient>();
//listing all installations that the app has access to
var installations = await client.GetInstallations();
//Get an installation token to access the first installation; tokens are then renewed automatically before expiry
var token = await client.GetInstallationToken(installationId);
//Start interacting with the installation using the installation token
var checkSuites = await client.GetCheckSuites(token, repo, pull.Head.Sha)
This library provides models for various Github objects, but you can also issue raw requests if some models are missing
var url = $"https://api.github.com/app/installations";
var payload = $"";
var result = await client.Execute(System.Net.Http.HttpMethod.Get, url, token, payload);
For detailed example, update the sample app settings.json
file with the App ID and the location of the private key file, and run it to see how easy it's to utilize github's new API from .Net.
Product | Versions |
---|---|
.NET | net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows net7.0 net7.0-android net7.0-ios net7.0-maccatalyst net7.0-macos net7.0-tvos net7.0-windows |
.NET Core | netcoreapp3.0 netcoreapp3.1 |
.NET Standard | netstandard2.1 |
MonoAndroid | monoandroid |
MonoMac | monomac |
MonoTouch | monotouch |
Tizen | tizen60 |
Xamarin.iOS | xamarinios |
Xamarin.Mac | xamarinmac |
Xamarin.TVOS | xamarintvos |
Xamarin.WatchOS | xamarinwatchos |
-
.NETStandard 2.1
- jwt (>= 5.3.1)
- Microsoft.Extensions.Options (>= 1.1.0)
- PemUtils (>= 3.0.0.81)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.