Description
zk
is a command-line tool helping you to maintain a plain text Zettelkasten or personal wiki.
Highlights
- Creating notes from templates
- Advanced search and filtering capabilities including tags, links and mentions
- Integration with your favorite editors:
- Any LSP-compatible editor
zk-nvim
for Neovim 0.5+zk-vscode
for Visual Studio Code- (unmaintained)
zk.nvim
for Neovim 0.5+ by Seth Messer
- Interactive browser, powered by
fzf
- Git-style command aliases and named filters
- Made with automation in mind
- Notebook housekeeping
- Future-proof, thanks to Markdown
- Supports most Markdown syntax flavors
- Links: regular Markdown links,
[[Wikilinks]]
and Neuron's[[Folgezettel links]]#
. - Tags:
#hashtags
,:colon:separated:tags:
, Bear's#multi-word tags#
. - YAML frontmatter
- Links: regular Markdown links,
See the changelog for the list of upcoming features waiting to be released.
zk
is not
What - 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
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.18+ installation, then clone the repository:
$ git clone https://github.com/mickael-menu/zk.git
$ cd zk
On macOS
$ make
$ ./zk -h
On Linux
$ make
$ ./zk -h
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