Get Involved

Terminal Quest is now open.

Let the trumpets blare and bells ring.

Enter the town of Folderton, a peaceful uneventful town. Until now.

People are going missing, a mysterious bell keeps ringing and you receive notes from an enigmatic stranger. Grab a keyboard and figure out what is going on before it is too late.

The town of Folderton is a filesystem which the user interacts with using Linux commands. By providing an engaging narrative (and heaps and heaps of ascii art), we give a context to commands like ls, cd, mv, cat, nano and echo, and make them easier to remember and understand.

See the Terminal Quest repo here.


If you are interested in contributing, there are many areas to get involved in.

Adding more chapters

Out of the 8 chapters we’ve planned for Terminal Quest, we’ve released 4. If you are interested in helping implement the future chapters, or want to suggest your own ideas of how the story should continue, please get in touch!

Improving how the story is made

We currently the story is written as a strict set of classes. These initially were designed so that a specific command would pass the challenge. If the user enters the wrong command, a hint is automatically shown. However this structure can feel a little inflexible as it doesn’t encourage the user to look around, or allow them to solve the problem in a different way.


We need to touch several areas of the repo to make it suitable for translations. The bulk of the story text is tightly integrated with the code, and uses a non standard method of choosing the colour of the text. We also need to translate the contents and names of the files used in the file directory.


UI for Terminal Quest

Terminal Quest is split across two screens. The left screen is the narrative or “story-side” which prints the story and hint text, while the right is an embedded terminal (a Vte.Terminal), which communicates to the window via a server. See here for more information about the structure of the UI.

There have been talks about maybe adding more functionality to the UI, either by creating an Inventory, showing your current location, and more information about the commands you’ve unlocked and the weapons (aliases) you have.

If you have feedback on the UI, please get in touch.

Migrate to the web

The application has been implemented using Python GTK 3.10 toolkit. There has been interest in making it work in the browser, perhaps by using a web terminal emulator.

How to collaborate

  • Fork the repo and send us a pull request!
  • Send an email to with your feedback, ideas or suggestions.
  • Visit the forum:

For more details on the structure of the repo, visit the Development page.

Written by
Software Developer at Kano