Skip to content

zk-org/zk

Repository files navigation

zk logo

A plain text note-taking assistant

Screencast

Description

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

Looking for a quick usage example?

Or want to see it in action? Checkout Shivan's video, Note-taking System ALL Programmers Should Consider.

Highlights

Note: Links in the below list are outbound ↗

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.

Install

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

Homebrew

brew install zk

Or, if you want to the latest changes:

brew install --HEAD zk

Nix

# 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 https://github.com/zk-org/zk.git
$ cd zk

On macOS / Linux

$ make
$ ./zk -h

Contributing

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