SadConsole 9.0.0-alpha3

This is a prerelease version of SadConsole.
There is a newer version of this package available.
See the version list below for details.
dotnet add package SadConsole --version 9.0.0-alpha3
                    
NuGet\Install-Package SadConsole -Version 9.0.0-alpha3
                    
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="SadConsole" Version="9.0.0-alpha3" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SadConsole" Version="9.0.0-alpha3" />
                    
Directory.Packages.props
<PackageReference Include="SadConsole" />
                    
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 SadConsole --version 9.0.0-alpha3
                    
#r "nuget: SadConsole, 9.0.0-alpha3"
                    
#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 SadConsole@9.0.0-alpha3
                    
#: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=SadConsole&version=9.0.0-alpha3&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=SadConsole&version=9.0.0-alpha3&prerelease
                    
Install as a Cake Tool

Updates for alpha3

  • Controls have a Tag property for user-definable data.
  • Window now has the following features:
    • Shown event when the window is made visible.
    • OnShown protected virtual method.
    • OnHidden protected virtual method.
  • Draw/Update have restored the TimeSpan parameter
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  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. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (8)

Showing the top 5 NuGet packages that depend on SadConsole:

Package Downloads
SadConsole.Extended

A library of common classes that extend SadConsole with new controls, windows, and more.

SadConsole.Host.MonoGame

A graphics hosting library for SadConsole that targets MonoGame.

SadConsole.Host.SFML

A graphics hosting library for SadConsole that targets SFML.

SadConsole.GoRogueHelpers

A helper library for SadConsole games built with GoRogue.

TheSadRogue.Integration

An official integration library for using GoRogue and SadConsole together to create a roguelike.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on SadConsole:

Repository Stars
Thraka/SadConsole
A .NET ascii/ansi console engine written in C# for MonoGame and SFML. Create your own text roguelike (or other) games!
Version Downloads Last Updated
10.6.0 71 8/9/2025
10.6.0-debug 61 8/9/2025
10.5.0 1,836 12/7/2024
10.5.0-debug 143 12/7/2024
10.4.2 303 10/24/2024
10.4.2-debug 124 10/24/2024
10.4.1 1,452 6/13/2024
10.4.1-debug 185 6/13/2024
10.4.0 1,461 3/31/2024
10.4.0-debug 236 3/31/2024
10.0.3 559 3/14/2024
10.0.3-debug 281 3/14/2024
10.0.2 1,629 11/10/2023
10.0.2-debug 900 11/10/2023
10.0.1 785 11/10/2023
10.0.1-debug 746 11/10/2023
10.0.0 1,859 10/29/2023
10.0.0-debug 1,009 10/29/2023
10.0.0-beta3-debug 1,132 10/14/2023
10.0.0-beta3 1,089 10/14/2023
10.0.0-beta2-debug 1,087 10/11/2023
10.0.0-beta2 1,116 10/11/2023
10.0.0-beta1-debug 1,120 10/11/2023
10.0.0-beta1 1,143 10/11/2023
10.0.0-alpha4-debug 1,408 8/26/2023
10.0.0-alpha4 1,346 8/26/2023
10.0.0-alpha3-debug 1,262 8/26/2023
10.0.0-alpha3 1,275 8/26/2023
10.0.0-alpha2-debug 1,653 6/18/2023
10.0.0-alpha2 1,445 6/18/2023
10.0.0-alpha1-debug 1,561 6/4/2023
9.2.2 5,263 1/22/2022
9.2.2-debug 1,271 1/22/2022
9.2.1 2,535 1/4/2022
9.2.0 3,410 12/31/2021
9.2.0-debug 1,152 12/31/2021
9.1.1 5,893 8/7/2021
9.1.1-debug 1,346 8/7/2021
9.1.0 2,216 7/6/2021
9.1.0-debug 1,331 7/6/2021
9.0.0 4,753 6/6/2021
9.0.0-debug 1,338 6/6/2021
9.0.0-beta4 2,044 1/15/2021
9.0.0-beta3 2,230 12/19/2020
9.0.0-beta2 1,659 10/9/2020
9.0.0-beta1 1,780 8/1/2020
9.0.0-alpha9 1,792 7/25/2020
9.0.0-alpha8 1,496 7/13/2020
9.0.0-alpha7 1,832 7/11/2020
9.0.0-alpha6 1,872 5/28/2020
9.0.0-alpha5 1,652 5/26/2020
9.0.0-alpha4 1,508 5/1/2020
9.0.0-alpha3 1,694 5/1/2020
9.0.0-alpha2 1,624 3/14/2020
9.0.0-alpha1 2,028 1/26/2020
8.99.3 3,855 8/15/2020
8.99.3-debug 1,538 8/15/2020
8.99.2 1,878 7/14/2020
8.99.2-debug 1,499 7/14/2020
8.99.1 2,569 4/11/2020
8.99.1-debug 1,510 4/11/2020
8.99.0 2,617 11/27/2019
8.99.0-debug 1,510 11/27/2019
8.9.1 3,988 11/5/2019
8.9.1-debug 1,511 11/5/2019
8.9.0 2,359 9/7/2019 8.9.0 is deprecated because it is no longer maintained.
8.9.0-debug 1,784 9/7/2019 8.9.0-debug is deprecated because it is no longer maintained.
8.8.1 3,220 7/28/2019 8.8.1 is deprecated because it is no longer maintained.
8.8.1-debug 1,738 7/28/2019 8.8.1-debug is deprecated because it is no longer maintained.
8.8.0 2,530 7/27/2019 8.8.0 is deprecated because it is no longer maintained.
8.8.0-debug 1,680 7/27/2019 8.8.0-debug is deprecated because it is no longer maintained.
8.7.1 2,096 6/22/2019 8.7.1 is deprecated because it is no longer maintained.
8.7.1-debug 1,743 6/22/2019 8.7.1-debug is deprecated because it is no longer maintained.
8.7.0 1,931 6/22/2019 8.7.0 is deprecated because it is no longer maintained.
8.7.0-debug 1,768 6/22/2019 8.7.0-debug is deprecated because it is no longer maintained.
8.6.0 2,210 4/14/2019 8.6.0 is deprecated because it is no longer maintained.
8.6.0-debug 1,779 4/14/2019 8.6.0-debug is deprecated because it is no longer maintained.
8.5.0 2,103 4/2/2019 8.5.0 is deprecated because it is no longer maintained.
8.5.0-debug 1,796 4/2/2019 8.5.0-debug is deprecated because it is no longer maintained.
8.4.1 2,067 3/19/2019 8.4.1 is deprecated because it is no longer maintained.
8.4.1-debug 1,831 3/19/2019 8.4.1-debug is deprecated because it is no longer maintained.
8.4.0 1,932 3/17/2019 8.4.0 is deprecated because it is no longer maintained.
8.4.0-debug 1,800 3/17/2019 8.4.0-debug is deprecated because it is no longer maintained.
8.3.0 2,036 3/10/2019 8.3.0 is deprecated because it is no longer maintained.
8.3.0-debug 1,760 3/10/2019 8.3.0-debug is deprecated because it is no longer maintained.
8.2.0 2,067 3/2/2019 8.2.0 is deprecated because it is no longer maintained.
8.2.0-debug 1,844 3/2/2019 8.2.0-debug is deprecated because it is no longer maintained.
8.1.0 2,030 2/28/2019 8.1.0 is deprecated because it is no longer maintained.
8.1.0-debug 1,756 2/28/2019 8.1.0-debug is deprecated because it is no longer maintained.
8.0.0 2,137 2/24/2019 8.0.0 is deprecated because it is no longer maintained.
8.0.0-pre5 1,819 2/19/2019 8.0.0-pre5 is deprecated because it is no longer maintained.
8.0.0-pre4 1,847 1/31/2019 8.0.0-pre4 is deprecated because it is no longer maintained.
8.0.0-pre2 1,893 12/30/2018 8.0.0-pre2 is deprecated because it is no longer maintained.
8.0.0-pre1 1,852 12/30/2018 8.0.0-pre1 is deprecated because it is no longer maintained.
7.3.0 2,122 12/29/2018
7.2.0 2,291 11/20/2018 7.2.0 is deprecated because it is no longer maintained.
7.1.0 2,329 10/19/2018 7.1.0 is deprecated because it is no longer maintained.
7.0.4 2,279 9/8/2018 7.0.4 is deprecated because it is no longer maintained.
7.0.3 2,137 9/8/2018 7.0.3 is deprecated because it is no longer maintained.
7.0.2 2,511 8/31/2018 7.0.2 is deprecated because it is no longer maintained.
7.0.0 2,201 8/29/2018
7.0.0-pre1 1,968 8/22/2018 7.0.0-pre1 is deprecated because it is no longer maintained.
6.5.0 2,572 6/12/2018
6.4.11 2,686 4/13/2018 6.4.11 is deprecated because it is no longer maintained.
6.4.11-pre1 2,469 4/6/2018 6.4.11-pre1 is deprecated because it is no longer maintained.
6.4.10 2,646 3/18/2018 6.4.10 is deprecated because it is no longer maintained.
6.4.9 2,605 3/18/2018 6.4.9 is deprecated because it is no longer maintained.
6.4.8 2,577 3/18/2018 6.4.8 is deprecated because it is no longer maintained.
6.4.7 2,655 3/16/2018 6.4.7 is deprecated because it is no longer maintained.
6.4.6 2,873 2/14/2018 6.4.6 is deprecated because it is no longer maintained.
6.4.5 2,675 2/3/2018 6.4.5 is deprecated because it is no longer maintained.
6.4.3 2,551 11/14/2017 6.4.3 is deprecated because it is no longer maintained.
6.4.2 2,642 8/11/2017 6.4.2 is deprecated because it is no longer maintained.
6.4.1 2,461 8/10/2017 6.4.1 is deprecated because it is no longer maintained.
6.4.0 2,540 7/25/2017 6.4.0 is deprecated because it is no longer maintained.
6.3.0 2,556 6/9/2017 6.3.0 is deprecated because it is no longer maintained.
6.2.2 2,572 5/20/2017 6.2.2 is deprecated because it is no longer maintained.
6.2.1 2,676 4/23/2017 6.2.1 is deprecated because it is no longer maintained.
6.2.0 2,490 4/22/2017 6.2.0 is deprecated because it is no longer maintained.
6.1.4 2,486 4/17/2017 6.1.4 is deprecated because it is no longer maintained.
6.1.3 3,173 4/3/2017 6.1.3 is deprecated because it is no longer maintained.
6.1.2 2,472 4/1/2017 6.1.2 is deprecated because it is no longer maintained.
6.1.1 2,412 4/1/2017 6.1.1 is deprecated because it is no longer maintained.
6.1.0 2,430 3/31/2017 6.1.0 is deprecated because it is no longer maintained.
6.0.1 2,549 3/19/2017 6.0.1 is deprecated because it is no longer maintained.
6.0.0 2,290 3/18/2017

A lot of structual changes to split out rendering from SadConsole. You now need to add SadConsole.Host.MonoGame
or SadConsole.Host SFML to your project.

Major changes:

- Object model has changed a lot. Console types no longer inherit from CellSurface and are based on a few different base
classes and interfaces implemented through ScreenObject. Everything in SadConsole is now a ScreenObject.

- Console.Surface represents the cell surface of the console. Extension methods are provided so that you can use
Console.Print and related methods. If you coding inside a Console instance though, the extension methods only work if
you qualify the call with this.Print.

- Font/FontMaster are now merged into a single type: Font.

- Font sizes are always represented in an X,Y value now, and are seperate from the font itself. This means every
console has a Font and FontSize property now instead of a single Font property.

- All UI objects were moved into the SadConsole.UI namespace.

- The theme system was overhauled (and mostly backported to SadConsole v8).

- A lot of misc name changes, swapping out where it specified Console and substituting ScreenObject. For example,
SadConsole.Input.MouseConsoleState is now SadConsole.Input.MouseScreenObjectState

- SadConsole.Global had a lot of changes. SadConsole.Global.Screen is the root console displayed on the screen
to which all other objects are attached to. It is a console and you cannot change this. It makes it simpler for new
users. To disable it, disable the renderer: SadConsole.Global.Screen.Renderer = null. Objects added to the Children
collection will still work; SadConsole will not bother drawing the root console itself.

- Entity is no longer a Console but a ScreenObject.

- App creation is slightly different with a few names migrated and events for draw/update callbacks

 SadConsole.Game.Create(80, 25);
 SadConsole.Game.Instance.OnStart = Init;
 SadConsole.Game.Instance.FrameUpdate += Instance_FrameUpdate;
 SadConsole.Game.Instance.Run();
 SadConsole.Game.Instance.Dispose();