No description
  • Rust 86%
  • Lua 13.5%
  • Nix 0.2%
  • Shell 0.2%
  • Python 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
dependabot[bot] a2e1dd1653
build(deps): bump rustls from 0.23.41 to 0.23.42 (#1467)
Bumps [rustls](https://github.com/rustls/rustls) from 0.23.41 to 0.23.42.
- [Release notes](https://github.com/rustls/rustls/releases)
- [Changelog](https://github.com/rustls/rustls/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rustls/rustls/compare/v/0.23.41...v/0.23.42)

---
updated-dependencies:
- dependency-name: rustls
  dependency-version: 0.23.42
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-20 07:34:20 +00:00
.cargo Added a .cargo/config.toml 2026-01-30 06:48:06 +01:00
.github build(deps): bump KSXGitHub/github-actions-deploy-aur (#1468) 2026-07-14 07:17:18 +00:00
.rpm Some more lua typedef installation fixes (#1391) 2026-03-20 10:20:03 +01:00
crates/pulldown-cmark-blightmud build(deps): bump regex from 1.12.3 to 1.12.4 (#1453) 2026-06-10 07:12:16 +00:00
resources Add help for command line options (#1455) 2026-06-28 11:44:39 +00:00
scripts Update README to indicate thatmac is arm64 release now (#1365) 2026-03-06 10:02:08 +01:00
src Add help for command line options (#1455) 2026-06-28 11:44:39 +00:00
tests Add scrollable tabbed output regions (#1444) 2026-06-28 13:37:35 +02:00
.editorconfig Adds .editoconfig and fixes bad indentation 2020-11-27 14:38:28 +01:00
.envrc project: add Nix Flake support 2023-10-31 17:13:32 -04:00
.gitignore project: add Nix Flake support 2023-10-31 17:13:32 -04:00
.luarc.json Adds lua typedefintions file (#1387) 2026-03-19 22:35:02 +01:00
.stylua.toml Rename stylua.toml to .stylua.toml (#1380) 2026-03-10 22:03:12 +00:00
build.rs Fix version in released code 2026-03-13 09:35:09 +01:00
Cargo.lock build(deps): bump rustls from 0.23.41 to 0.23.42 (#1467) 2026-07-20 07:34:20 +00:00
Cargo.toml build(deps): bump mockall from 0.14.0 to 0.15.0 (#1464) 2026-06-29 07:11:26 +00:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2020-05-09 01:03:10 +02:00
CONTRIBUTING.md Timestamp debug logfiles (#1434) 2026-05-20 14:41:01 +00:00
flake.lock Support nix macos (#1332) 2026-01-31 15:52:36 +01:00
flake.nix Support nix macos (#1332) 2026-01-31 15:52:36 +01:00
LICENSE Create LICENSE 2020-05-09 01:03:39 +02:00
README.md Add help for command line options (#1455) 2026-06-28 11:44:39 +00:00

Rust GitHub commits since latest release (by SemVer) GitHub issues by-label dependency status Security audit Coverage Status Discord

Blightmud : A mud client for the terminal

Blightmud has been a passion project of mine for some time. A big user of the old but great tinyfugue I always wanted to create my own similar mud client. Even though I don't play much muds these days.

The name?

The client is written in rust. Some navigating throught the thesaurus brought me to the word blight and here we are.

Features

  • Completely terminal based (mac and linux)
  • Telnet:
    • TLS
    • GMCP
    • MSDP
    • MCCP2 (compress2)
    • NAWS
    • TTYPE
    • TELNET CHARSET
    • MSSP
  • Lua scripting:
    • Output and sending
    • Aliases
    • Triggers
    • Timers
    • Customizing status bar
    • Persistent storage
    • Session storage
    • Keybindings
    • Audio playback (music/ambiance and sound effects)
    • Text-To-Speech
    • Mouse scrolling
    • Plugins
    • Sockets (TCP connecting and sending only)
    • Spellchecking
  • Low resource and fast
  • In client help and manuals
  • Native Text-To-Speech functionality (optional compile)
  • Text searching
  • Tab completion
  • Split view when scrolling
  • Screen reader friendly mode

Demo

screenshot

Installation

  • Ubuntu/Debian : Deb packages can be found on the releases page
  • Archlinux/Manjaro : Packages are available on AUR
  • NixOS/Nix : Packages are available in NixPkgs, or from our Flake
  • Mac/Homebrew : We have a homebrew tap brew tap Blightmud/blightmud (Apple Silicon / ARM64; if you're on Intel (x86_64) compiling is the best option)
  • Cargo : If you have rust installed just run cargo install --git https://github.com/blightmud/blightmud blightmud from your favourite terminal.
  • Other/Alternative : Download source and run cargo install --path . from the project root
  • Windows : No native windows support but Blightmud runs fine under WSL

Usage

The following command line options are available when running Blightmud from a terminal:

Option Description
-c, --connect <HOST:PORT> Connect to a server on startup
-t, --tls Use TLS when connecting (only applies with --connect)
-n, --no-verify Don't verify the cert for the TLS connection
-s, --script <PATH> Launch using the provided script instead of the defaults
-T, --tts Use the TTS system (only in builds compiled with TTS)
-w, --world <WORLD> Connect to a predefined world
-r, --reader-mode Force screen reader friendly mode
-V, --verbose Enable verbose logging
--no-update-check Skip checking for new Blightmud versions at startup
--codec <CODEC> Specify the codec to use for the MUD (eg. UTF8)
-v, --version Print version information and exit
-h, --help Print the help menu and exit

The authoritative list for your build is always available by running blightmud --help, and the same reference is available in-client via /help command_line.

Compiling

  • Install rust
  • Run cargo build to compile
  • Run cargo run to run

Dependencies include, openssl, alsa-libs and pkg-config

  • Ubuntu apt install pkg-config libssl-dev libasound2-dev libclang-dev (libopenssl-dev on older versions)
  • Arch pacman -S pkgconf alsa-lib openssl clang

Compile with text-to-speech

  • Install rust
  • Run cargo build --all-features to compile
  • Run cargo run --all-features to run

In order for this to build correctly you will need to install some additional dev dependencies: libclang and libspeechd. Below are some installation commands that might fit your system:

  • Ubuntu apt install libclang-dev libspeechd-dev speech-dispatcher speech-dispatcher-espeak espeak
  • Arch pacman -S speech-dispatcher espeak

Compile without spellchecking

Some users may encounter issues building the spellcheck feature on MacOS ARM64 (M1/M2). To build Blightmud without the spellcheck feature, use --no-default-features. E.g.:

  • Install rust
  • Run cargo build --no-default-features or cargo build --no-default-features --features text-to-speech
  • Run cargo run --no-default-features or cargo run --no-default-features --features text-to-speech to run

Compile without audio

If you're running Blightmud on a server or system without ALSA/audio libraries, you can disable audio support to avoid requiring these dependencies:

  • Install rust
  • Run cargo build --no-default-features --features spellcheck
  • Run cargo run --no-default-features --features spellcheck to run

You can combine with other features as needed:

  • With text-to-speech: cargo build --no-default-features --features spellcheck,text-to-speech
  • Minimal build (no audio, no spellcheck): cargo build --no-default-features

Nix

If you're using Nix or NixOS you can try Blightmud right away with:

  • nix run github:blightmud/blightmud

For developers, once you've cloned this repo you can use the Blightmud flake directly, or with direnv, to have a ready-to-go and self-contained build environment:

  • Run nix build to build Blightmud without text to speech.
  • Run nix build .#blightmud-tts to build Blightmud with text to speech.
  • Run nix develop to enter a dev. env. with Rust nightly.
  • Run nix develop .#stable to enter a dev. env. with the latest stable Rust.

Support, questions and help

Join our discord post an issue or post a question in discussions

Contributing

All contributions are welcome. Check out contributing guidelines.

Side notes

This is my first rust project that has actually grown a bit. Some things might look silly but thanks to rust they should still be safe. Anywho. If you find some antipattern where you have a better idea I'm more then happy to se the PR and learn some more rustier ways.