![]() |
VOOZH | about |
dotnet add package ModelingEvolution.XTermBlazor --version 2.2.3
NuGet\Install-Package ModelingEvolution.XTermBlazor -Version 2.2.3
<PackageReference Include="ModelingEvolution.XTermBlazor" Version="2.2.3" />
<PackageVersion Include="ModelingEvolution.XTermBlazor" Version="2.2.3" />Directory.Packages.props
<PackageReference Include="ModelingEvolution.XTermBlazor" />Project file
paket add ModelingEvolution.XTermBlazor --version 2.2.3
#r "nuget: ModelingEvolution.XTermBlazor, 2.2.3"
#:package ModelingEvolution.XTermBlazor@2.2.3
#addin nuget:?package=ModelingEvolution.XTermBlazor&version=2.2.3Install as a Cake Addin
#tool nuget:?package=ModelingEvolution.XTermBlazor&version=2.2.3Install as a Cake Tool
<img align="right" width="100" height="100" src="https://github.com/BattlefieldDuck/XtermBlazor/assets/29337428/244eb056-4bb1-43a2-85b4-1909034c3ddf">
👁 Dotnet Package
👁 NuGet Version
👁 NuGet Downloads
Brings xterm.js to Blazor
Live Demo: https://xtermblazor.pages.dev
Before you get started with this project, make sure you have the following software installed on your system:
Find the package through NuGet Package Manager or install it with following command.
dotnet add package XtermBlazor
After the package is added, you need to add the following in your _Imports.razor
@using XtermBlazor
Add the following to your HTML head section, it's either index.html or _Host.cshtml depending on whether you're running WebAssembly or Server.
<link href="_content/XtermBlazor/XtermBlazor.min.css" rel="stylesheet" />
In the HTML body section of either index.html or _Host.cshtml add this:
<script src="_content/XtermBlazor/XtermBlazor.min.js"></script>
<Xterm @ref="_terminal" Options="_options" OnFirstRender="@OnFirstRender" />
@code {
private Xterm _terminal;
private TerminalOptions _options = new TerminalOptions
{
CursorBlink = true,
CursorStyle = CursorStyle.Bar,
Theme =
{
Background = "#17615e",
},
};
private async Task OnFirstRender()
{
await _terminal.WriteLine("Hello World");
}
}
Xterm supports Addons
To use @xterm/addon-fit addon, you need to add the following to your HTML body section either index.html or _Host.cshtml.
Blazor WebAssembly index.html
<script src="https://cdn.jsdelivr.net/npm/@xterm/addon-fit@0.9.0/lib/addon-fit.min.js"></script>
<script src="_framework/blazor.webassembly.js"></script>
<script>navigator.serviceWorker.register('service-worker.js');</script>
<script src="_content/XtermBlazor/XtermBlazor.min.js"></script>
<script>XtermBlazor.registerAddons({"addon-fit": new FitAddon.FitAddon()});</script>
Blazor Server _Host.cshtml
<script src="https://cdn.jsdelivr.net/npm/@@xterm/addon-fit@0.9.0/lib/addon-fit.min.js"></script>
<script src="_framework/blazor.server.js"></script>
<script src="_content/XtermBlazor/XtermBlazor.min.js"></script>
<script>XtermBlazor.registerAddons({"addon-fit": new FitAddon.FitAddon()});</script>
<Xterm @ref="_terminal" Options="_options" Addons="_addons" OnFirstRender="@OnFirstRender" />
@code {
private Xterm _terminal;
private TerminalOptions _options = new TerminalOptions
{
CursorBlink = true,
CursorStyle = CursorStyle.Bar,
};
private HashSet<string> _addons = new HashSet<string>()
{
"addon-fit",
};
private async Task OnFirstRender()
{
// Invoke fit() function
await _terminal.Addon("addon-fit").InvokeVoidAsync("fit");
await _terminal.WriteLine("Hello World");
}
}
Contributions are welcome! Please feel free to submit pull requests or open issues.
XtermBlazor is licensed under the MIT License. See the LICENSE file for more details.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 net10.0 is compatible. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
Showing the top 1 NuGet packages that depend on ModelingEvolution.XTermBlazor:
| Package | Downloads |
|---|---|
|
ModelingEvolution.Blazor.LogViewer
Reusable Blazor component for viewing logs from processes and Docker containers in real-time using XtermBlazor terminal. |
This package is not used by any popular GitHub repositories.