/Heimer

Heimer is a simple cross-platform mind map, diagram, and note-taking tool written in Qt.

Primary LanguageC++GNU General Public License v3.0GPL-3.0

Heimer

Heimer is a desktop application for creating mind maps and other suitable diagrams. It's written in Qt and targeted for Linux and Windows.

Here is a simple mind map of Heimer itself running on Ubuntu 20.04:

Heimer screenshot

A very short introduction video to Heimer 1.9.0

Features

  • Adjustable grid
  • Automatic layout optimization
  • Autoload & Autosave
  • Easy-to-use UI
  • Export to PNG or SVG
  • Forever 100% free
  • Full undo/redo
  • Nice animations
  • Quickly add node text and edge labels
  • Save/load in XML-based .ALZ-files
  • Translations in English (default), Chinese, Dutch, Finnish, French, German, Italian, Spanish
  • Very fast
  • Zoom in/out/fit
  • Zoom with mouse wheel

Donations

It takes a lot of effort to develop and maintain Heimer, so if you find the application useful it would be very much appreciated to tip the project and help to keep the development active.

It's easy to donate via PayPal:

paypal.me/juzzlin

Thanks! :)

License

Heimer's source code is licensed under GNU GPLv3. See COPYING for the complete license text.

All image files, except where otherwise noted, are licensed under CC BY-SA 3.0: http://creativecommons.org/licenses/by-sa/3.0/

Installation

See https://github.com/juzzlin/Heimer/releases for available pre-built packages.

Linux: Snap

On Linux distributions that support universal Snap packages you can install Heimer like this:

$ snap install heimer

Run:

$ heimer

For more information see https://snapcraft.io/heimer and https://docs.snapcraft.io/core/install

Snap is the recommended way to install Heimer on Linux.

Linux: Deb

There are Debian packages for Ubuntu/Debian. Use some graphical tool to install, or as an example on Ubuntu 20.04:

$ sudo apt install ./heimer-2.5.0-ubuntu-20.04_amd64.deb

Run:

$ heimer

Linux: AppImage

AppImage is a "universal" package that can (in theory) be run on all Linux platforms:

Make the image executable e.g. like this:

$ chmod 755 Heimer-2.4.0-x86_64.AppImage

Run:

$ ./Heimer-2.4.0-x86_64.AppImage

Windows

For Windows there's an installer and alternatively a ZIP-archive that just contains the Heimer executable.

Setting the language

You can set the language manually with --lang option. For example, Finnish:

$ heimer --lang fi

Show all available options:

$ heimer -h

Building the project

Currently the build depends on Qt 5 only (qt5-default, qttools5-dev-tools, qttools5-dev, libqt5svg5-dev packages on Ubuntu). Support for Qt 6 is preliminary and should work with CMake.

In the case of missing qt5-default, install these packages manually: qtbase5-dev, qtchooser, qt5-qmake, qtbase5-dev-tools.

Command to install all (at least most) needed dev packages on Ubuntu:

$ sudo apt install build-essential cmake qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools qttools5-dev-tools qttools5-dev libqt5svg5-dev

Linux / Unix

The "official" build system for Linux is CMake.

Building for Linux in a nutshell:

$ mkdir build && cd build

$ cmake ..

$ make -j4

Run unit tests:

$ ctest

Install locally:

$ sudo make install

Debian package (.deb) can be created like this:

$ cpack -G DEB

See Jenkinsfile on how to build other packages in Docker.

Windows

The NSIS installer for Windows is currently built in Docker with MXE (http://mxe.cc):

$ ./scripts/build-windows-nsis

This is so very cool! A Windowsless Windows build!

Anyway, as the project depends only on Qt SDK you can use your favourite Qt setup to build the project on Windows.

Docker environment files

Needed Dockerfiles can be found at https://github.com/juzzlin/Dockerfiles