Faerie 0.2.0

Prefix Reserved
dotnet add package Faerie --version 0.2.0
                    
NuGet\Install-Package Faerie -Version 0.2.0
                    
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="Faerie" Version="0.2.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Faerie" Version="0.2.0" />
                    
Directory.Packages.props
<PackageReference Include="Faerie" />
                    
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 Faerie --version 0.2.0
                    
#r "nuget: Faerie, 0.2.0"
                    
#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 Faerie@0.2.0
                    
#: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=Faerie&version=0.2.0
                    
Install as a Cake Addin
#tool nuget:?package=Faerie&version=0.2.0
                    
Install as a Cake Tool

Faerie

Faerie is a fluent, UI-agnostic C# engine for building text adventures / interactive fiction — the Fluent Adventure Engine.

  • Rooms, things, creatures and verbs wired together by C# reference — no magic strings.
  • A flexible parser, verb reactions, and per-turn daemons.
  • Output filters (rewrite/echo/suppress text by room or state).
  • Location stills and optional chroma-keyed overlays (Room.Illustrated, RoomArt) — painted by the Avalonia host.
  • JSON save/load.

The engine renders through the abstract Faerie.Presentation.ITerminal. It has no UI dependency; front ends ship separately:

var b = GameBuilder.Create("My Adventure").AddStandardVerbs();
var hall = b.Room("Hall").Describe("A plain hall.");
b.StartIn(hall);
Game game = b.Build();

See the repository for the authoring guide and sample games.

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 (3)

Showing the top 3 NuGet packages that depend on Faerie:

Package Downloads
Faerie.Terminal

Shared, UI-agnostic terminal model for the Faerie text-adventure engine: a true-colour character-cell framebuffer (TerminalBuffer) with a non-scrolling title row, an optional status row, scrollback, and styled cells. Implements Faerie's ITerminal and is reused by concrete front ends (e.g. Faerie.Terminal.Avalonia and a future Faerie.Terminal.Console). No UI-toolkit dependency.

Faerie.Terminal.Avalonia

Avalonia "fake terminal" front end for the Faerie text-adventure engine: renders Faerie.Terminal's character-cell framebuffer as a true-colour text screen with blink/underline/bold/inverse, scrollback, zoom, title/status bars, and a game-supplied or built-in retro font. Bundles 20 curated open-licensed fonts (IBM PC, BBC, and 8-bit classics).

Faerie.Terminal.Headless

Headless Faerie host for automated testing and CI: replay player commands from a script file and write a plain-text session transcript (input and stripped output). No UI dependency — reference from your own game or test project alongside Faerie.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.2.0 148 8/19/2026
0.1.1 177 6/22/2026
0.1.0 145 6/16/2026