# Post - My Practice of Zettelkasten

Previously, I talked about my method1 of writing notes. Here’s where I’ll talk more about what steps I take to practice and implement this method.

I’m a huge fan of neovim. I sponsor the project and am super pleased with how using neovim has changed my workflow. I actually found this method of note taking on the awesome-neovim repository. It mentions a plugin neuron.nvim, which led me finally to neuron and the zettelkasten approach for note-taking.2

That being said, these are the tools I use to write my zettels. Neuron, Neovim and some fancy git hooks magic. The neuron neovim plugin3 provides excellent keybindings and telescope integration for fuzzy finding zettels.

I test the zettel locally on the local server and then deploy using this post-receive git hook

#!/bin/sh
# The production directory
TARGET="/var/www/devonmorris.dev"
# A temporary directory for deployment
TEMP="/tmp/devonmorris.dev"
# The Git repo
REPO="/srv/git/zettelkasten.git"
# Deploy the content to the temporary directory
mkdir -p $TEMP git --work-tree=$TEMP --git-dir=$REPO checkout -f # Deploy to github as well git push github -f --all # Generate site with neuron if [ -e /home/git/.nix-profile/etc/profile.d/nix.sh ]; then . /home/git/.nix-profile/etc/profile.d/nix.sh; fi cd$TEMP
neuron gen -o \$TARGET

With that I can create a new note, link to existing notes, commit, push and deploy in minutes. This makes writing notes, making connections and updating the website a breeze!

1. Post - My Method of Zettelkasten

↩︎
2. This paragraph should be a testament to the efficacy of zettelkasten. There is probably some comparison to be made to the www being a shared zettelkasten for all people. This goes deep. Shared cognition. Society mimicking the brain. Conway’s law.

↩︎
3. My configuration for this plugin

↩︎