finds.dev← search

// the find

Thraka/SadConsole

★ 1,383 · C# · MIT · updated Sep 2026

A .NET ascii/ansi console engine written in C# for MonoGame and SFML. Create your own text roguelike (or other) games!

SadConsole is a tile-based ASCII/ANSI engine for .NET that renders through MonoGame or SFML, aimed at people building roguelikes or other text-styled games rather than general terminal UIs. It's for devs who want a real game loop, entities, and GUI controls under the hood instead of just printing colored text to a console window.

The core/host split is the right call architecturally — your game logic doesn't care if you're on MonoGame or SFML, you just reference a different host package. It ships real import tooling for legacy ANSI art formats (TheDraw, RexPaint, Playscii), which saves roguelike devs from hand-building assets from scratch. Entity rendering handles thousands of movable objects, so it's built for actual games, not toy demos. It's clearly still maintained: CI on every push, targets .NET 8/9/10 simultaneously, and the last push was within the month.

The base package does nothing on its own — you must pick a host (MonoGame or SFML) and then separately pull in a rendering package like MonoGame.Framework.DesktopGL, which is an extra decision point before you've written a line of game code. The README is a feature list with gifs and no actual quick-start code, so getting from zero to a running window means hunting through the wiki. Each console is locked to a single font, which bites if you want mixed glyph sizes in one UI (e.g. a small status bar font next to a large map font). It's a narrow tool: if you just want styled terminal output rather than a tile-based game engine, this is the wrong library and something like Spectre.Console fits better.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →