TermBlade.Core 0.1.1

dotnet add package TermBlade.Core --version 0.1.1
                    
NuGet\Install-Package TermBlade.Core -Version 0.1.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="TermBlade.Core" Version="0.1.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="TermBlade.Core" Version="0.1.1" />
                    
Directory.Packages.props
<PackageReference Include="TermBlade.Core" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add TermBlade.Core --version 0.1.1
                    
#r "nuget: TermBlade.Core, 0.1.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package TermBlade.Core@0.1.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=TermBlade.Core&version=0.1.1
                    
Install as a Cake Addin
#tool nuget:?package=TermBlade.Core&version=0.1.1
                    
Install as a Cake Tool

TermBlade

<div align="center"> <img src="/assets/TermBlade.png" alt="TermBlade" height="120" /> <br/><br/> <em>Razor-sharp Terminal UIs</em> <br/><br/> <a href="https://www.nuget.org/packages/TermBlade.Core"><img alt="NuGet" src="https://img.shields.io/nuget/v/TermBlade.Core?style=flat-square" /></a> <a href="https://github.com/evilz/TermBlade/actions/workflows/build-dotnet.yml"><img alt="Build" src="https://img.shields.io/github/actions/workflow/status/evilz/TermBlade/build-dotnet.yml?style=flat-square&branch=main" /></a> </div>

TermBlade is a terminal UI core library for .NET 10. It provides a cell-based rendering engine with ANSI escape sequence support, styled text, a rope-backed edit buffer with full undo/redo, a plugin architecture, and sample console applications.

Requirements

Quick Start

dotnet add package TermBlade.Core
using TermBlade.Core.Ansi;
using TermBlade.Core.Buffer;

using var buf = CellBuffer.Create(60, 20);
var bg     = Rgba.FromInts(0,   0,   0);
var fg     = Rgba.FromInts(255, 255, 255);
var accent = Rgba.FromInts(0,   200, 255);

buf.Clear(bg);
buf.DrawBox(0, 0, 60, 20, accent, bg, BorderStyle.Rounded, BorderSides.All,
            fill: true, title: " My App ");
buf.DrawText("Hello from TermBlade!", 4, 3, fg, bg);

Solution Layout

src/TermBlade.Core/            # Core library (NuGet package)
  Ansi/                        # Rgba, AnsiCodes, TextAttributes, ColorIntent
  Buffer/                      # CellBuffer, Cell, BorderStyle
  Text/                        # TextBuffer, EditBuffer, Rope, StyledText
  Rendering/                   # Renderer (diff-based, alternate screen)
  Syntax/                      # SyntaxStyle, StyleDefinition
  Events/                      # EventEmitter
  Plugins/                     # IPlugin, PluginRegistry
src/TermBlade.Razor/           # Razor host + component wrappers for renderables
tests/TermBlade.Tests/         # xUnit test project (126 tests)
samples/TermBlade.Samples/    # Sample console applications
samples/TermBlade.Razor.Samples/ # Razor-hosted sample console applications

Build & Test

dotnet restore
dotnet build
dotnet test

Run Samples

dotnet run --project samples/TermBlade.Samples -- layout   # simple box layout
dotnet run --project samples/TermBlade.Samples -- styled   # text attributes
dotnet run --project samples/TermBlade.Samples -- editor   # edit buffer demo
dotnet run --project samples/TermBlade.Samples -- scroll   # scrolling content
dotnet run --project samples/TermBlade.Samples -- input    # keyboard input
dotnet run --project samples/TermBlade.Razor.Samples -- layout   # Razor-hosted layout demo
dotnet run --project samples/TermBlade.Razor.Samples -- editor   # Razor-hosted editor demo
dotnet run --project samples/TermBlade.Razor.Samples -- console  # Razor-hosted overlay demo

Documentation

Visit the TermBlade documentation site for detailed guides and API reference.

Key Types

Type Description
Rgba Packed color: RGB, ANSI-256 indexed, or terminal-default intent
CellBuffer 2D terminal cell grid with text, borders, blitting, alpha blend
TextBuffer Styled text storage (read-only display)
EditBuffer Rope-backed editor: cursor, insert/delete, undo/redo
Renderer Diff-based ANSI terminal renderer with alternate-screen support
SyntaxStyle Named style definitions with priority-aware merging
EventEmitter Simple on/off/once/emit event bus
PluginRegistry IPlugin registration and lifecycle
Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net10.0

    • No dependencies.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on TermBlade.Core:

Package Downloads
TermBlade.Razor

Razor host and component wrappers for TermBlade terminal UI renderables.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.1 95 5/29/2026