Skip to content
ETHORA LABS

Open source · Not a product

TerminalQuest

A small arcade game that teaches the command line by making you use it. Each station drops you into a real bash prompt: what you type actually runs, and a real file has to move before anything unlocks. 502 automated tests, 98% coverage, zero dependencies, MIT.

Open source on GitHub

A personal open-source project, not one of Ethora’s own products — free to play, read and fork under MIT.

View on GitHub

Why it exists

Almost nobody teaches the terminal itself — ls, cd, cat, mkdir, mv, rm — the commands used dozens of times a day. Most people pick it up the slow way, one searched error at a time. TerminalQuest is a small attempt at fixing that the fun way: the “puzzle” at every station is solved by typing one real command, in a real shell, with real consequences — not a simulated, multiple-choice version of it.

How it works

  1. Walk the ship

    Move around with arrow keys, dodge patrolling enemies, and find your way to an old computer.

  2. Read the panel

    Every terminal shows exactly what is needed: the command, what it does, its syntax, and the concrete task — and nothing more.

  3. Run the real command

    There is no autofill. Whatever is typed runs through actual /bin/bash, starting in a scratch folder on the machine.

  4. Something unlocks

    Get it right, and the world reacts — a door opens, a gate unlocks — because a real file was actually created, moved or deleted.

At a glance

  • 8 commands, 3 levels
  • 502 automated tests
  • 98% coverage
  • Zero dependencies
  • MIT

Figures are from the project’s own test suite and documentation, not a claim made on its behalf.

Design principles

  • Real outcomes, not answer matching — every station checks the actual filesystem after a command runs.
  • Guidance without autopilot — the panel shows the exact command; it still has to be typed.
  • Explanation at the right moment — the ? affordance is available after something has run, not forced beforehand.
  • Progress without pressure — no timers, no speed bonuses, no typing races.
  • Accessible by default — a high-contrast mode uses bold, underline and reverse video, not colour alone.

Read the code, or play it

The full source, the test suite and the install instructions are on GitHub.

View on GitHub