What is it?

napalm is an ASCII/ANSI painter with a text user interface in the terminal. It allows you to select from different characters and colours, paint them on the canvas, export the canvas to a text file and much more!

What it looks like

Image: napalm in action
napalm in action


  • Create canvases and layers with the :new command
  • Select characters and colours and paint them onto the canvas
  • Add strings of text with the :echo command
  • Select areas on the canvas
  • Cut, copy and paste with the x, k and p keys respectively.
  • Flood fill areas with the :fill command
  • Merge, delete, rename and move layers
  • Undo/redo actions, with descriptions of what has been undone/redone
  • Save your work to a text file (with ANSI codes) using :w
  • Revisit saved projects or import new material with :e
  • Download and install

    Currently, the only supported OS is Linux.

    Dependency: ncurses

    The only substantial dependency is ncurses. You will need not just the library on your system (most likely already installed) but also the 'development' package (i.e. header files, if you know what those are). For example, you need to install the package libncurses-dev on Debian and ncurses-devel on OpenSUSE using your package manager.

    Dependency: gcc, make, etc.

    If you are not used to compiling software from source code, then there is a chance that you are missing some of the tools required for doing this. Make sure that packages with the following names are installed:

  • gcc
  • make
  • Note: if you are using Debian, there is a reliable way to get all the packages needed for compiling source code for most projects written in C and C++:

    sudo apt-get install build-essential

    This installs all the relevant packages.

    Compiling and installing

    Once you have all the dependencies, run the following commands in a terminal:

    $ git clone http://unraed.uk/repos/napalm.git napalm
    $ cd napalm
    $ make
    $ sudo make install

    You should now be able to run the command napalm to start napalm.


    The main source for help is the man page, which should be installed if you follow the instructions above. Type man napalm to view it.

    There are also helptext files which come with the napalm distribution. See the doc/ directory in the napalm files.

    Contact the author

    If you have trouble installing napalm, or find a bug, or have a suggestion for a new feature, then please email me: alkpen [at] protonmail [full stop] com.

    I am especially interested in hearing from anyone who creates ASCII/ANSI art and either uses napalm, or sees potential in it. Your comments would be greatly appreciated.


    napalm is licensed under GPLv3.