Skip to content


Repository files navigation

zk logo

A plain text note-taking assistant


Looking for a quick usage example? Let's get started.


zk is a command-line tool helping you to maintain a plain text Zettelkasten or personal wiki.


See the changelog for the list of upcoming features waiting to be released.

What zk is not

  • A note editor.
  • A tool to serve your notes on the web – for this, you may be interested in Neuron or Gollum.


Check out the latest release for pre-built binaries for macOS and Linux (zk was not tested on Windows).


brew install zk

Or, if you want to the latest changes:

brew install --HEAD zk


# Run zk from Nix store without installing it:
nix run nixpkgs#zk
# Or, to install it permanently:
nix-env -iA zk

Alpine Linux

zk is currently available in the testing repositories:

apk add zk

Arch Linux

You can install the zk package from the official repos.

sudo pacman -S zk

Build from scratch

Make sure you have a working Go 1.21+ installation, then clone the repository:

$ git clone
$ cd zk

On macOS / Linux

$ make
$ ./zk -h


We warmly welcome issues, PRs and discussions.

Here you can read some useful info for contributing to zk.

Related projects

  • Neuron – a great tool to publish a Zettelkasten on the web
  • Emanote – an improved successor to Neuron
  • sirupsen's zk – a collection of scripts with a similar purpose
  • zk-spaced – spaced repetition plugin for zk