zk/README.md

79 lines
2.6 KiB
Markdown
Raw Normal View History

2021-02-27 10:50:18 +00:00
<div align="center">
<h1>zk</h1>
<h4>A plain text note-taking assistant</h4>
<img alt="Screencast" width="95%" src="docs/assets/media/screencast.svg"/>
2021-02-28 12:15:19 +00:00
<p>Looking for a quick usage example? <a href="docs/getting-started.md">Let's get started</a>.</p>
2021-02-27 10:50:18 +00:00
</div>
2021-02-26 22:18:47 +00:00
2021-02-27 10:50:18 +00:00
## Description
2021-02-26 22:18:47 +00:00
`zk` is a command-line tool helping you to maintain a plain text [Zettelkasten](https://zettelkasten.de/introduction/) or [personal wiki](https://en.wikipedia.org/wiki/Personal_wiki).
2021-03-14 14:11:59 +00:00
### Highlights
2021-02-26 22:18:47 +00:00
2021-03-14 14:11:59 +00:00
* [Creating notes from templates](docs/note-creation.md)
* [Advanced search and filtering capabilities](docs/note-filtering.md) including [tags](docs/tags.md), links and mentions
* [Interactive browser](docs/tool-fzf), powered by `fzf`
2021-03-24 20:06:32 +00:00
* [Git-style command aliases](docs/config-alias.md) and [named filters](docs/config-filter.md)
2021-03-14 14:11:59 +00:00
* [Made with automation in mind](docs/automation.md)
* [Notebook housekeeping](docs/notebook-housekeeping.md)
* [Future-proof, thanks to Markdown](docs/future-proof.md)
2021-03-18 18:39:06 +00:00
* 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](docs/note-frontmatter.md)
2021-02-26 22:18:47 +00:00
2021-03-14 14:11:59 +00:00
[See the changelog](CHANGELOG.md) for the list of upcoming features waiting to be released.
2021-02-26 22:18:47 +00:00
2021-03-14 14:11:59 +00:00
### What `zk` is not
2021-02-27 10:50:18 +00:00
2021-03-14 14:11:59 +00:00
* A note editor.
* A tool to serve your notes on the web for this, you may be interested in [Neuron](docs/neuron.md) or [Gollum](https://github.com/gollum/gollum).
2021-02-27 10:50:18 +00:00
## Install
2021-04-04 14:31:31 +00:00
[Check out the latest release](https://github.com/mickael-menu/zk/releases) for pre-built binaries for macOS and Linux (`zk` was not tested on Windows).
2021-02-27 10:50:18 +00:00
### Build from scratch
2021-04-04 14:31:31 +00:00
Make sure you have a working [Go installation](https://golang.org/), then clone the repository:
2021-02-27 10:50:18 +00:00
```sh
$ git clone https://github.com/mickael-menu/zk.git
$ cd zk
$ chmod a+x go
2021-04-04 14:31:31 +00:00
```
#### On macOS
`icu4c` is required to build `zk`, which you can install with [Homebrew](https://brew.sh/).
```
$ brew install icu4c
$ ./go build
$ ./zk -h
```
##### Apple Silicon
The build command needs additional environment variables on Apple Silicon:
```
$ GOARCH=arm64 CGO_CFLAGS="-I/opt/homebrew/opt/icu4c/include" CGO_LDFLAGS="-L/opt/homebrew/opt/icu4c/lib" ./go build
```
#### On Linux
`libicu-dev` is required to build `zk`, use your favorite package manager to install it.
```
$ apt-install libicu-dev
$ ./go build
$ ./zk -h
2021-02-27 10:50:18 +00:00
```
2021-02-26 22:18:47 +00:00
2021-03-14 14:11:59 +00:00
## Related projects
* [Neuron](https://github.com/srid/neuron) a great tool to publish a Zettelkasten on the web
* [sirupsen's zk](https://github.com/sirupsen/zk) a collection of scripts with a similar purpose