Spectre.Console.Extensions.Hosting
0.2.0
dotnet add package Spectre.Console.Extensions.Hosting --version 0.2.0
NuGet\Install-Package Spectre.Console.Extensions.Hosting -Version 0.2.0
<PackageReference Include="Spectre.Console.Extensions.Hosting" Version="0.2.0" />
paket add Spectre.Console.Extensions.Hosting --version 0.2.0
#r "nuget: Spectre.Console.Extensions.Hosting, 0.2.0"
// Install Spectre.Console.Extensions.Hosting as a Cake Addin
#addin nuget:?package=Spectre.Console.Extensions.Hosting&version=0.2.0
// Install Spectre.Console.Extensions.Hosting as a Cake Tool
#tool nuget:?package=Spectre.Console.Extensions.Hosting&version=0.2.0
Spectre.Console.Extensions.Hosting
Adds Spectre.Console CommandApp extensions for Microsoft.Extensions.Hosting.
Table of Contents
Install
Install the Spectre.Console.Extensions.Hosting NuGet package into your app.
Install-Package Spectre.Console.Extensions.Hosting
Usage
After the installation you can use the extension UseSpectreConsole
for IHostBuilder.
For this you must configure the SpectreConsole CommandApp in your application`s Program.cs file:
public static async Task<int> Main(string[] args)
{
await Host.CreateDefaultBuilder(args)
.UseConsoleLifetime()
.UseSpectreConsole<DefaultCommand>()
.ConfigureServices(
(_, services) => { services.AddSingleton<IGreeter, HelloWorldGreeter>(); })
.RunConsoleAsync();
return Environment.ExitCode;
}
It is also possible to customize the command configurations:
Host.CreateDefaultBuilder(args)
...
.UseSpectreConsole(config =>
{
config.AddCommand<AddCommand>("add");
config.AddCommand<CommitCommand>("commit");
config.AddCommand<RebaseCommand>("rebase");
#if DEBUG
config.PropagateExceptions();
config.ValidateExamples();
#endif
})
...
Examples
Examples are located in the samples folder. It is planned to further adopt CLI examples from Spectre.Console.
Maintainer
Jürgen Rosenthal-Buroh @JuergenRB
Contributing
pectre.Console.Extensions.Hosting follows the Contributor Covenant Code of Conduct.
We accept Pull Requests.
Small note: If editing the Readme, please conform to the standard-readme specification.
License
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 | netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1 |
.NET Standard | netstandard2.0 netstandard2.1 |
.NET Framework | net461 net462 net463 net47 net471 net472 net48 net481 |
MonoAndroid | monoandroid |
MonoMac | monomac |
MonoTouch | monotouch |
Tizen | tizen40 tizen60 |
Xamarin.iOS | xamarinios |
Xamarin.Mac | xamarinmac |
Xamarin.TVOS | xamarintvos |
Xamarin.WatchOS | xamarinwatchos |
-
.NETStandard 2.0
- No dependencies.
-
net6.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.