Mind Mapping

h-m-m – create mind maps in the terminal

Structured thinking is a process of setting a framework to an unstructured problem. Having a structure not only helps to understand a particular problem, it also helps to identify areas which need more understanding. Structured thinking allows us to map ideas in structured fashion, thereby enabling the identification of areas which require the most thought.

We cover mind mapping software with attractive GUIs in this roundup. h-m-m is different from mind map software we’ve previously explored, as this tool is terminal-based. It’s billed as a simple, fast, keyboard-centric tool for working with mind maps.

h-m-m is an acronym for ‘hackers mind map’, but this tool is useful for anyone wanting structured thinking. It’s pronounced like the interjection “hmm”.


There really isn’t any installation. h-m-m is a single PHP file. We can clone the project’s GitHub directory and copy the h-m-m file to somewhere on our PATH. There is a package in the Arch User Repository for Arch and Arch-based distros which simply copies the h-m-m file to /usr/bin.

In Operation

Run h-m-m from your terminal to run the application with an empty map, or h-m-m to open an existing file.

On a fresh file, you’ll just see a single node with the word root. That’s the central term. Press e to rename that label. Like a tree, central is the concept of branches. Pressing O or TAB creates a new child for the active node, whereas o creates a new sibling to the active node.

In the image below, we’ve started a mind map with a few childs and siblings. It illustrates a few of the things that h-m-m offers including sequential numbers.

Image of h-m-m in action

Once you’ve mastered the keyboard shortcuts, you can create an intricate concept map. Navigating around the mind map will be familiar to users of the Vim text editor, as h, j, k, l are the navigation keys (or use the arrow keys).

There’s support for copying, pasting, cutting, and deleting without ever leaving the keyboard.

We can save our mindmap with S, or export it to HTML with x.

What else does h-m-m offer?

  • Search for a phrase.
  • Adjust the view including centering the active node, line spacing, change the maximum node width and more.
  • Mind maps are stored in plain text files (with hmm file extension by default) without metadata.


Mind maps are perfectly suited for planning projects at a low level. They help you structure your thoughts and ideas with clarity.

If you’re looking for a terminal-based mind mapping tool, h-m-m is the best open source tool we’ve found. If you hate learning keyboard shortcuts, go with a GUI tool instead.

Website: github.com/nadrad/h-m-m
Developer: Nader K. Rad
License: GNU General Public License v3.0

h-m-m is written in PHP. Learn PHP with our recommended free books and free tutorials.

Return to Mind Mapping Home Page

Popular series
Free and Open Source SoftwareThe largest compilation of the best free and open source software in the universe. Each article is supplied with a legendary ratings chart helping you to make informed decisions.
ReviewsHundreds of in-depth reviews offering our unbiased and expert opinion on software. We offer helpful and impartial information.
Alternatives to Proprietary SoftwareReplace proprietary software with open source alternatives: Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle, Atlassian, Corel, Cisco, Intuit, and SAS.
GamesAwesome Free Linux Games Tools showcases a series of tools that making gaming on Linux a more pleasurable experience. This is a new series.
Artificial intelligence iconMachine Learning explores practical applications of machine learning and deep learning from a Linux perspective. This is a new series.
Guide to LinuxNew to Linux? Read our Linux for Starters series. We start right at the basics and teach you everything you need to know to get started with Linux.
Alternatives to popular CLI tools showcases essential tools that are modern replacements for core Linux utilities.
System ToolsEssential Linux system tools focuses on small, indispensable utilities, useful for system administrators as well as regular users.
ProductivityLinux utilities to maximise your productivity. Small, indispensable tools, useful for anyone running a Linux machine.
AudioSurveys popular streaming services from a Linux perspective: Amazon Music Unlimited, Myuzi, Spotify, Deezer, Tidal.
Saving Money with LinuxSaving Money with Linux looks at how you can reduce your energy bills running Linux.
Home ComputersHome computers became commonplace in the 1980s. Emulate home computers including the Commodore 64, Amiga, Atari ST, ZX81, Amstrad CPC, and ZX Spectrum.
Now and ThenNow and Then examines how promising open source software fared over the years. It can be a bumpy ride.
Linux at HomeLinux at Home looks at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged.
Linux CandyLinux Candy reveals the lighter side of Linux. Have some fun and escape from the daily drudgery.
DockerGetting Started with Docker helps you master Docker, a set of platform as a service products that delivers software in packages called containers.
Android AppsBest Free Android Apps. We showcase free Android apps that are definitely worth downloading. There's a strict eligibility criteria for inclusion in this series.
Programming BooksThese best free books accelerate your learning of every programming language. Learn a new language today!
Programming TutorialsThese free tutorials offer the perfect tonic to our free programming books series.
Linux Around The WorldLinux Around The World showcases usergroups that are relevant to Linux enthusiasts. Great ways to meet up with fellow enthusiasts.
Stars and StripesStars and Stripes is an occasional series looking at the impact of Linux in the USA.
Notify of

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Inline Feedbacks
View all comments