Introduction to mcTUI
mcTUI is an extremely lightweight, fast, and pure terminal (TUI) Minecraft launcher written in Go, designed for minimalist environments and users who prefer the console.
Requirements
- Operating System: Linux (Tested on Arch Linux), macOS, or Windows.
- Java Runtime Environment (JRE):
jre17-openjdk(For Minecraft 1.17 to 1.20.4)jre21-openjdk(For Minecraft 1.20.5+)
Installation
Quick Install (Linux & macOS)
Installs the optimized binary directly into your local bin path:
bash
git clone https://github.com/agmonetti/mcTUI.git /tmp/mctui && \
cd /tmp/mctui && go mod tidy && \
go build -ldflags="-s -w" -o ~/.local/bin/mctui main.go && \
rm -rf /tmp/mctui(Ensure ~/.local/bin is in your $PATH)
Manual Compilation (Linux & macOS)
If you prefer to compile it step by step:
bash
# 1. Clone the repository
git clone https://github.com/agmonetti/mcTUI.git
cd mcTUI
# 2. Download Go dependencies
go mod tidy
# 3. Compile the optimized binary
go build -ldflags="-s -w" -o mctui main.go
# 4. Install on your system
mkdir -p ~/.local/bin
mv mctui ~/.local/bin/Windows (Pre-built Binaries)
For Windows users who do not wish to compile from source:
- Download the latest
mctui-windows-amd64.exefrom the Releases page. - Ensure you have the correct Java version installed (e.g., Eclipse Temurin). Crucial: You must check the option to add Java to your system's
PATHvariable during installation. - Open a PowerShell window in the directory where you downloaded the executable.
- Run the launcher:
powershell
.\mctui-windows-amd64.exeBasic Usage
Launch the binary from your terminal:
bash
mctuiNavigation Controls
↑/↓: Navigate lists and options.Enter: Confirm selection or toggle settings.Esc/q: Go back or quit the application.
Important: Username Validation
mcTUI strictly enforces the official Minecraft network protocol for usernames. Your LAN profile name must be between 1 and 16 characters long and can only contain alphanumeric characters and underscores (no spaces). This active input validation prevents deep JVM runtime crashes from occurring on local servers.